Coverage Report

Created: 2025-01-24 01:23

/src/scnlib/src/scn/impl.h
Line
Count
Source (jump to first uncovered line)
1
// Copyright 2017 Elias Kosunen
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
//     https://www.apache.org/licenses/LICENSE-2.0
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14
//
15
// This file is a part of scnlib:
16
//     https://github.com/eliaskosunen/scnlib
17
18
#pragma once
19
20
// Transitively includes <scn/scan.h>
21
#include <scn/regex.h>
22
#include <scn/xchar.h>
23
24
#include <algorithm>
25
#include <clocale>
26
#include <cmath>
27
#include <cwchar>
28
#include <functional>
29
#include <vector>
30
31
#if SCN_HAS_BITOPS
32
#include <bit>
33
#elif SCN_MSVC
34
#include <IntSafe.h>
35
#include <intrin.h>
36
#elif SCN_POSIX && !SCN_GCC_COMPAT
37
38
SCN_CLANG_PUSH
39
SCN_CLANG_IGNORE("-Wreserved-id-macro")
40
#define _XOPEN_SOURCE 700
41
SCN_CLANG_POP
42
43
#include <strings.h>
44
#endif
45
46
#if SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_STD
47
#include <regex>
48
#if SCN_REGEX_BOOST_USE_ICU
49
#error "Can't use the ICU with std::regex"
50
#endif
51
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_BOOST
52
#include <boost/regex.hpp>
53
#if SCN_REGEX_BOOST_USE_ICU
54
#include <boost/regex/icu.hpp>
55
#endif
56
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_RE2
57
#include <re2/re2.h>
58
#endif
59
60
namespace scn {
61
SCN_BEGIN_NAMESPACE
62
63
/////////////////////////////////////////////////////////////////
64
// Private ranges stuff
65
/////////////////////////////////////////////////////////////////
66
67
namespace ranges {
68
69
template <typename R>
70
using const_iterator_t = iterator_t<std::add_const_t<R>>;
71
72
// Like std::ranges::distance, utilizing .position if available
73
namespace detail::distance_ {
74
struct fn {
75
private:
76
    template <typename I, typename S>
77
    static constexpr auto impl(I i, S s, priority_tag<1>)
78
        -> decltype(s.position() - i.position())
79
    {
80
        return s.position() - i.position();
81
    }
82
83
    template <typename I, typename S>
84
    static constexpr auto impl(I i, S s, priority_tag<0>)
85
        -> std::enable_if_t<sized_sentinel_for<S, I>, iter_difference_t<I>>
86
51.2k
    {
87
51.2k
        return s - i;
88
51.2k
    }
std::__1::enable_if<sized_sentinel_for<char const*, char const*>, scn::v4::ranges::incrementable_traits<char const*>::difference_type>::type scn::v4::ranges::detail::distance_::fn::impl<char const*, char const*>(char const*, char const*, scn::v4::detail::priority_tag<0ul>)
Line
Count
Source
86
49.1k
    {
87
49.1k
        return s - i;
88
49.1k
    }
std::__1::enable_if<sized_sentinel_for<wchar_t const*, wchar_t const*>, scn::v4::ranges::incrementable_traits<wchar_t const*>::difference_type>::type scn::v4::ranges::detail::distance_::fn::impl<wchar_t const*, wchar_t const*>(wchar_t const*, wchar_t const*, scn::v4::detail::priority_tag<0ul>)
Line
Count
Source
86
2.14k
    {
87
2.14k
        return s - i;
88
2.14k
    }
Unexecuted instantiation: std::__1::enable_if<sized_sentinel_for<std::__1::__wrap_iter<char*>, std::__1::__wrap_iter<char*> >, scn::v4::ranges::incrementable_traits<std::__1::__wrap_iter<char*> >::difference_type>::type scn::v4::ranges::detail::distance_::fn::impl<std::__1::__wrap_iter<char*>, std::__1::__wrap_iter<char*> >(std::__1::__wrap_iter<char*>, std::__1::__wrap_iter<char*>, scn::v4::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<sized_sentinel_for<std::__1::__wrap_iter<wchar_t*>, std::__1::__wrap_iter<wchar_t*> >, scn::v4::ranges::incrementable_traits<std::__1::__wrap_iter<wchar_t*> >::difference_type>::type scn::v4::ranges::detail::distance_::fn::impl<std::__1::__wrap_iter<wchar_t*>, std::__1::__wrap_iter<wchar_t*> >(std::__1::__wrap_iter<wchar_t*>, std::__1::__wrap_iter<wchar_t*>, scn::v4::detail::priority_tag<0ul>)
89
90
    template <typename I, typename S>
91
    static constexpr auto impl(I i, S s, priority_tag<0>)
92
        -> std::enable_if_t<!sized_sentinel_for<S, I>, iter_difference_t<I>>
93
32
    {
94
32
        iter_difference_t<I> counter{0};
95
64
        while (i != s) {
96
32
            ++i;
97
32
            ++counter;
98
32
        }
99
32
        return counter;
100
32
    }
Unexecuted instantiation: std::__1::enable_if<!(sized_sentinel_for<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type>::type scn::v4::ranges::detail::distance_::fn::impl<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(sized_sentinel_for<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::detail::basic_scan_buffer<char>::forward_iterator>), scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>::difference_type>::type scn::v4::ranges::detail::distance_::fn::impl<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::detail::basic_scan_buffer<char>::forward_iterator>(scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(sized_sentinel_for<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type>::type scn::v4::ranges::detail::distance_::fn::impl<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(sized_sentinel_for<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type>::type scn::v4::ranges::detail::distance_::fn::impl<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(sized_sentinel_for<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>), scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type>::type scn::v4::ranges::detail::distance_::fn::impl<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>(scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::detail::priority_tag<0ul>)
std::__1::enable_if<!(sized_sentinel_for<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type>::type scn::v4::ranges::detail::distance_::fn::impl<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::detail::priority_tag<0ul>)
Line
Count
Source
93
32
    {
94
32
        iter_difference_t<I> counter{0};
95
64
        while (i != s) {
96
32
            ++i;
97
32
            ++counter;
98
32
        }
99
32
        return counter;
100
32
    }
101
102
public:
103
    template <typename I, typename S>
104
    constexpr auto operator()(I first, S last) const
105
        -> std::enable_if_t<input_or_output_iterator<I> && sentinel_for<S, I>,
106
                            iter_difference_t<I>>
107
51.2k
    {
108
51.2k
        return fn::impl(std::move(first), std::move(last), priority_tag<0>{});
109
51.2k
    }
std::__1::enable_if<(input_or_output_iterator<char const*>)&&(sentinel_for<char const*, char const*>), scn::v4::ranges::incrementable_traits<char const*>::difference_type>::type scn::v4::ranges::detail::distance_::fn::operator()<char const*, char const*>(char const*, char const*) const
Line
Count
Source
107
49.1k
    {
108
49.1k
        return fn::impl(std::move(first), std::move(last), priority_tag<0>{});
109
49.1k
    }
std::__1::enable_if<(input_or_output_iterator<wchar_t const*>)&&(sentinel_for<wchar_t const*, wchar_t const*>), scn::v4::ranges::incrementable_traits<wchar_t const*>::difference_type>::type scn::v4::ranges::detail::distance_::fn::operator()<wchar_t const*, wchar_t const*>(wchar_t const*, wchar_t const*) const
Line
Count
Source
107
2.14k
    {
108
2.14k
        return fn::impl(std::move(first), std::move(last), priority_tag<0>{});
109
2.14k
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type>::type scn::v4::ranges::detail::distance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>)&&(sentinel_for<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::detail::basic_scan_buffer<char>::forward_iterator>), scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>::difference_type>::type scn::v4::ranges::detail::distance_::fn::operator()<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::detail::basic_scan_buffer<char>::forward_iterator>(scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::detail::basic_scan_buffer<char>::forward_iterator) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(sentinel_for<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type>::type scn::v4::ranges::detail::distance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<std::__1::__wrap_iter<char*> >)&&(sentinel_for<std::__1::__wrap_iter<char*>, std::__1::__wrap_iter<char*> >), scn::v4::ranges::incrementable_traits<std::__1::__wrap_iter<char*> >::difference_type>::type scn::v4::ranges::detail::distance_::fn::operator()<std::__1::__wrap_iter<char*>, std::__1::__wrap_iter<char*> >(std::__1::__wrap_iter<char*>, std::__1::__wrap_iter<char*>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type>::type scn::v4::ranges::detail::distance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>)&&(sentinel_for<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>), scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type>::type scn::v4::ranges::detail::distance_::fn::operator()<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>(scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator) const
std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(sentinel_for<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type>::type scn::v4::ranges::detail::distance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>) const
Line
Count
Source
107
32
    {
108
32
        return fn::impl(std::move(first), std::move(last), priority_tag<0>{});
109
32
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<std::__1::__wrap_iter<wchar_t*> >)&&(sentinel_for<std::__1::__wrap_iter<wchar_t*>, std::__1::__wrap_iter<wchar_t*> >), scn::v4::ranges::incrementable_traits<std::__1::__wrap_iter<wchar_t*> >::difference_type>::type scn::v4::ranges::detail::distance_::fn::operator()<std::__1::__wrap_iter<wchar_t*>, std::__1::__wrap_iter<wchar_t*> >(std::__1::__wrap_iter<wchar_t*>, std::__1::__wrap_iter<wchar_t*>) const
110
};
111
}  // namespace detail::distance_
112
113
inline constexpr auto distance = detail::distance_::fn{};
114
115
namespace detail {
116
template <typename I, typename = void>
117
struct has_batch_advance : std::false_type {};
118
template <typename I>
119
struct has_batch_advance<I,
120
                         std::void_t<decltype(SCN_DECLVAL(I&).batch_advance(
121
                             SCN_DECLVAL(std::ptrdiff_t)))>> : std::true_type {
122
};
123
}  // namespace detail
124
125
// std::advance, utilizing .batch_advance if available
126
namespace detail::advance_ {
127
struct fn {
128
private:
129
    template <typename T>
130
    static constexpr T abs(T t)
131
94.4k
    {
132
94.4k
        if (t < T{0}) {
133
0
            return -t;
134
0
        }
135
94.4k
        return t;
136
94.4k
    }
137
138
    template <typename I>
139
    static constexpr auto impl(I& i, iter_difference_t<I> n, priority_tag<1>)
140
        -> std::enable_if_t<has_batch_advance<I>::value>
141
    {
142
        i.batch_advance(n);
143
    }
144
145
    template <typename I>
146
    static constexpr auto impl_i_n(I& i,
147
                                   iter_difference_t<I> n,
148
                                   priority_tag<0>)
149
        -> std::enable_if_t<random_access_iterator<I>>
150
108k
    {
151
108k
        i += n;
152
108k
    }
std::__1::enable_if<random_access_iterator<char const*>, void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<char const*>(char const*&, scn::v4::ranges::incrementable_traits<char const*>::difference_type, scn::v4::detail::priority_tag<0ul>)
Line
Count
Source
150
102k
    {
151
102k
        i += n;
152
102k
    }
std::__1::enable_if<random_access_iterator<wchar_t const*>, void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<wchar_t const*>(wchar_t const*&, scn::v4::ranges::incrementable_traits<wchar_t const*>::difference_type, scn::v4::detail::priority_tag<0ul>)
Line
Count
Source
150
5.59k
    {
151
5.59k
        i += n;
152
5.59k
    }
153
154
    template <typename I>
155
    static constexpr auto impl_i_n(I& i,
156
                                   iter_difference_t<I> n,
157
                                   priority_tag<0>)
158
        -> std::enable_if_t<bidirectional_iterator<I> &&
159
                            !random_access_iterator<I>>
160
3.86k
    {
161
3.86k
        constexpr auto zero = iter_difference_t<I>{0};
162
163
3.86k
        if (n > zero) {
164
204
            while (n-- > zero) {
165
102
                ++i;
166
102
            }
167
102
        }
168
3.76k
        else {
169
3.76k
            while (n++ < zero) {
170
0
                --i;
171
0
            }
172
3.76k
        }
173
3.86k
    }
std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(!(random_access_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)), void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type, scn::v4::detail::priority_tag<0ul>)
Line
Count
Source
160
1.48k
    {
161
1.48k
        constexpr auto zero = iter_difference_t<I>{0};
162
163
1.48k
        if (n > zero) {
164
0
            while (n-- > zero) {
165
0
                ++i;
166
0
            }
167
0
        }
168
1.48k
        else {
169
1.48k
            while (n++ < zero) {
170
0
                --i;
171
0
            }
172
1.48k
        }
173
1.48k
    }
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >)&&(!(random_access_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >)), void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type, scn::v4::detail::priority_tag<0ul>)
std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(!(random_access_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)), void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type, scn::v4::detail::priority_tag<0ul>)
Line
Count
Source
160
102
    {
161
102
        constexpr auto zero = iter_difference_t<I>{0};
162
163
102
        if (n > zero) {
164
204
            while (n-- > zero) {
165
102
                ++i;
166
102
            }
167
102
        }
168
0
        else {
169
0
            while (n++ < zero) {
170
0
                --i;
171
0
            }
172
0
        }
173
102
    }
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >)&&(!(random_access_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >)), void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type, scn::v4::detail::priority_tag<0ul>)
std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >)&&(!(random_access_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >)), void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type, scn::v4::detail::priority_tag<0ul>)
Line
Count
Source
160
2.28k
    {
161
2.28k
        constexpr auto zero = iter_difference_t<I>{0};
162
163
2.28k
        if (n > zero) {
164
0
            while (n-- > zero) {
165
0
                ++i;
166
0
            }
167
0
        }
168
2.28k
        else {
169
2.28k
            while (n++ < zero) {
170
0
                --i;
171
0
            }
172
2.28k
        }
173
2.28k
    }
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >)&&(!(random_access_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >)), void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type, scn::v4::detail::priority_tag<0ul>)
174
175
    template <typename I>
176
    static constexpr auto impl_i_n(I& i,
177
                                   iter_difference_t<I> n,
178
                                   priority_tag<0>)
179
        -> std::enable_if_t<!bidirectional_iterator<I>>
180
0
    {
181
0
        while (n-- > iter_difference_t<I>{0}) {
182
0
            ++i;
183
0
        }
184
0
    }
Unexecuted instantiation: std::__1::enable_if<!(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >), void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type, scn::v4::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >), void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type, scn::v4::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(bidirectional_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>), void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>(scn::v4::detail::basic_scan_buffer<char>::forward_iterator&, scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>::difference_type, scn::v4::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >), void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type, scn::v4::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >), void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type, scn::v4::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(bidirectional_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>), void>::type scn::v4::ranges::detail::advance_::fn::impl_i_n<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>(scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator&, scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type, scn::v4::detail::priority_tag<0ul>)
185
186
    template <typename I, typename S>
187
    static constexpr auto impl_i_s(I& i, S bound, priority_tag<2>)
188
        -> std::enable_if_t<std::is_assignable_v<I&, S>>
189
1.85k
    {
190
1.85k
        i = std::move(bound);
191
1.85k
    }
_ZN3scn2v46ranges6detail8advance_2fn8impl_i_sIPKcS7_EENSt3__19enable_ifIXsr3stdE15is_assignable_vIRT_T0_EEvE4typeESB_SC_NS0_6detail12priority_tagILm2EEE
Line
Count
Source
189
952
    {
190
952
        i = std::move(bound);
191
952
    }
_ZN3scn2v46ranges6detail8advance_2fn8impl_i_sIPKwS7_EENSt3__19enable_ifIXsr3stdE15is_assignable_vIRT_T0_EEvE4typeESB_SC_NS0_6detail12priority_tagILm2EEE
Line
Count
Source
189
898
    {
190
898
        i = std::move(bound);
191
898
    }
192
193
    template <typename I, typename S>
194
    static constexpr auto impl_i_s(I& i, S bound, priority_tag<1>)
195
        -> std::enable_if_t<sized_sentinel_for<S, I>>
196
    {
197
        fn::impl_i_n(i, bound - i);
198
    }
199
200
    template <typename I, typename S>
201
    static constexpr void impl_i_s(I& i, S bound, priority_tag<0>)
202
252
    {
203
4.00k
        while (i != bound) {
204
3.75k
            ++i;
205
3.75k
        }
206
252
    }
Unexecuted instantiation: void scn::v4::ranges::detail::advance_::fn::impl_i_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>, scn::v4::detail::priority_tag<0ul>)
void scn::v4::ranges::detail::advance_::fn::impl_i_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>, scn::v4::detail::priority_tag<0ul>)
Line
Count
Source
202
168
    {
203
2.60k
        while (i != bound) {
204
2.43k
            ++i;
205
2.43k
        }
206
168
    }
Unexecuted instantiation: void scn::v4::ranges::detail::advance_::fn::impl_i_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>, scn::v4::detail::priority_tag<0ul>)
void scn::v4::ranges::detail::advance_::fn::impl_i_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>, scn::v4::detail::priority_tag<0ul>)
Line
Count
Source
202
84
    {
203
1.39k
        while (i != bound) {
204
1.31k
            ++i;
205
1.31k
        }
206
84
    }
207
208
    template <typename I, typename S>
209
    static constexpr auto impl_i_n_s(I& i, iter_difference_t<I> n, S bound)
210
        -> std::enable_if_t<sized_sentinel_for<S, I>, iter_difference_t<I>>
211
47.2k
    {
212
47.2k
        if (fn::abs(n) >= fn::abs(bound - i)) {
213
66
            auto dist = bound - i;
214
66
            fn::impl_i_s(i, bound, priority_tag<2>{});
215
66
            return dist;
216
66
        }
217
47.1k
        fn::impl_i_n(i, n, priority_tag<1>{});
218
47.1k
        return n;
219
47.2k
    }
std::__1::enable_if<sized_sentinel_for<char const*, char const*>, scn::v4::ranges::incrementable_traits<char const*>::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<char const*, char const*>(char const*&, scn::v4::ranges::incrementable_traits<char const*>::difference_type, char const*)
Line
Count
Source
211
47.2k
    {
212
47.2k
        if (fn::abs(n) >= fn::abs(bound - i)) {
213
66
            auto dist = bound - i;
214
66
            fn::impl_i_s(i, bound, priority_tag<2>{});
215
66
            return dist;
216
66
        }
217
47.1k
        fn::impl_i_n(i, n, priority_tag<1>{});
218
47.1k
        return n;
219
47.2k
    }
Unexecuted instantiation: std::__1::enable_if<sized_sentinel_for<wchar_t const*, wchar_t const*>, scn::v4::ranges::incrementable_traits<wchar_t const*>::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<wchar_t const*, wchar_t const*>(wchar_t const*&, scn::v4::ranges::incrementable_traits<wchar_t const*>::difference_type, wchar_t const*)
220
221
    template <typename I, typename S>
222
    static constexpr auto impl_i_n_s(I& i, iter_difference_t<I> n, S bound)
223
        -> std::enable_if_t<bidirectional_iterator<I> &&
224
                                !sized_sentinel_for<S, I>,
225
                            iter_difference_t<I>>
226
4.26k
    {
227
4.26k
        constexpr iter_difference_t<I> zero{0};
228
4.26k
        iter_difference_t<I> counter{0};
229
230
4.26k
        if (n < zero) {
231
0
            do {
232
0
                --i;
233
0
                --counter;  // Yes, really
234
0
            } while (++n < zero && i != bound);
235
0
        }
236
4.26k
        else {
237
14.4k
            while (n-- > zero && i != bound) {
238
10.1k
                ++i;
239
10.1k
                ++counter;
240
10.1k
            }
241
4.26k
        }
242
243
4.26k
        return counter;
244
4.26k
    }
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >)&&(!(sized_sentinel_for<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >)), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(!(sized_sentinel_for<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>)
std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(!(sized_sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>)
Line
Count
Source
226
3.45k
    {
227
3.45k
        constexpr iter_difference_t<I> zero{0};
228
3.45k
        iter_difference_t<I> counter{0};
229
230
3.45k
        if (n < zero) {
231
0
            do {
232
0
                --i;
233
0
                --counter;  // Yes, really
234
0
            } while (++n < zero && i != bound);
235
0
        }
236
3.45k
        else {
237
11.4k
            while (n-- > zero && i != bound) {
238
7.98k
                ++i;
239
7.98k
                ++counter;
240
7.98k
            }
241
3.45k
        }
242
243
3.45k
        return counter;
244
3.45k
    }
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >)&&(!(sized_sentinel_for<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >)), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(!(sized_sentinel_for<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(!(sized_sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>)
std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >)&&(!(sized_sentinel_for<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >)), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true>)
Line
Count
Source
226
806
    {
227
806
        constexpr iter_difference_t<I> zero{0};
228
806
        iter_difference_t<I> counter{0};
229
230
806
        if (n < zero) {
231
0
            do {
232
0
                --i;
233
0
                --counter;  // Yes, really
234
0
            } while (++n < zero && i != bound);
235
0
        }
236
806
        else {
237
2.96k
            while (n-- > zero && i != bound) {
238
2.15k
                ++i;
239
2.15k
                ++counter;
240
2.15k
            }
241
806
        }
242
243
806
        return counter;
244
806
    }
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >)&&(!(sized_sentinel_for<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >)), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true>)
245
246
    template <typename I, typename S>
247
    static constexpr auto impl_i_n_s(I& i, iter_difference_t<I> n, S bound)
248
        -> std::enable_if_t<!bidirectional_iterator<I> &&
249
                                !sized_sentinel_for<S, I>,
250
                            iter_difference_t<I>>
251
0
    {
252
0
        constexpr iter_difference_t<I> zero{0};
253
0
        iter_difference_t<I> counter{0};
254
255
0
        while (n-- > zero && i != bound) {
256
0
            ++i;
257
0
            ++counter;
258
0
        }
259
260
0
        return counter;
261
0
    }
Unexecuted instantiation: std::__1::enable_if<(!(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >))&&(!(sized_sentinel_for<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >)), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(!(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >))&&(!(sized_sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(!(bidirectional_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>))&&(!(sized_sentinel_for<scn::v4::ranges::default_sentinel_t, scn::v4::detail::basic_scan_buffer<char>::forward_iterator>)), scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>(scn::v4::detail::basic_scan_buffer<char>::forward_iterator&, scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>::difference_type, scn::v4::ranges::default_sentinel_t)
Unexecuted instantiation: std::__1::enable_if<(!(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >))&&(!(sized_sentinel_for<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >)), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(!(bidirectional_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >))&&(!(sized_sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(!(bidirectional_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>))&&(!(sized_sentinel_for<scn::v4::ranges::default_sentinel_t, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>)), scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type>::type scn::v4::ranges::detail::advance_::fn::impl_i_n_s<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>(scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator&, scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type, scn::v4::ranges::default_sentinel_t)
262
263
public:
264
    template <typename I>
265
    constexpr auto operator()(I& i, iter_difference_t<I> n) const
266
        -> std::enable_if_t<input_or_output_iterator<I>>
267
64.7k
    {
268
64.7k
        fn::impl_i_n(i, n, detail::priority_tag<1>{});
269
64.7k
    }
std::__1::enable_if<input_or_output_iterator<char const*>, void>::type scn::v4::ranges::detail::advance_::fn::operator()<char const*>(char const*&, scn::v4::ranges::incrementable_traits<char const*>::difference_type) const
Line
Count
Source
267
55.3k
    {
268
55.3k
        fn::impl_i_n(i, n, detail::priority_tag<1>{});
269
55.3k
    }
std::__1::enable_if<input_or_output_iterator<wchar_t const*>, void>::type scn::v4::ranges::detail::advance_::fn::operator()<wchar_t const*>(wchar_t const*&, scn::v4::ranges::incrementable_traits<wchar_t const*>::difference_type) const
Line
Count
Source
267
5.59k
    {
268
5.59k
        fn::impl_i_n(i, n, detail::priority_tag<1>{});
269
5.59k
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >, void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type) const
std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >, void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type) const
Line
Count
Source
267
1.48k
    {
268
1.48k
        fn::impl_i_n(i, n, detail::priority_tag<1>{});
269
1.48k
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >, void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>, void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>(scn::v4::detail::basic_scan_buffer<char>::forward_iterator&, scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >, void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type) const
std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >, void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type) const
Line
Count
Source
267
102
    {
268
102
        fn::impl_i_n(i, n, detail::priority_tag<1>{});
269
102
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >, void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>, void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>(scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator&, scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type) const
std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >, void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type) const
Line
Count
Source
267
2.28k
    {
268
2.28k
        fn::impl_i_n(i, n, detail::priority_tag<1>{});
269
2.28k
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >, void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type) const
270
271
    template <typename I, typename S>
272
    constexpr auto operator()(I& i, S bound) const
273
        -> std::enable_if_t<input_or_output_iterator<I> && sentinel_for<S, I>>
274
2.03k
    {
275
2.03k
        fn::impl_i_s(i, bound, priority_tag<2>{});
276
2.03k
    }
std::__1::enable_if<(input_or_output_iterator<char const*>)&&(sentinel_for<char const*, char const*>), void>::type scn::v4::ranges::detail::advance_::fn::operator()<char const*, char const*>(char const*&, char const*) const
Line
Count
Source
274
886
    {
275
886
        fn::impl_i_s(i, bound, priority_tag<2>{});
276
886
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >), void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>) const
std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >), void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>) const
Line
Count
Source
274
168
    {
275
168
        fn::impl_i_s(i, bound, priority_tag<2>{});
276
168
    }
std::__1::enable_if<(input_or_output_iterator<wchar_t const*>)&&(sentinel_for<wchar_t const*, wchar_t const*>), void>::type scn::v4::ranges::detail::advance_::fn::operator()<wchar_t const*, wchar_t const*>(wchar_t const*&, wchar_t const*) const
Line
Count
Source
274
898
    {
275
898
        fn::impl_i_s(i, bound, priority_tag<2>{});
276
898
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >), void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>) const
std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >), void>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>) const
Line
Count
Source
274
84
    {
275
84
        fn::impl_i_s(i, bound, priority_tag<2>{});
276
84
    }
277
278
    template <typename I, typename S>
279
    constexpr auto operator()(I& i, iter_difference_t<I> n, S bound) const
280
        -> std::enable_if_t<input_or_output_iterator<I> && sentinel_for<S, I>,
281
                            iter_difference_t<I>>
282
51.4k
    {
283
51.4k
        return n - fn::impl_i_n_s(i, n, bound);
284
51.4k
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(sentinel_for<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>) const
std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>) const
Line
Count
Source
282
3.45k
    {
283
3.45k
        return n - fn::impl_i_n_s(i, n, bound);
284
3.45k
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>)&&(sentinel_for<scn::v4::ranges::default_sentinel_t, scn::v4::detail::basic_scan_buffer<char>::forward_iterator>), scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>(scn::v4::detail::basic_scan_buffer<char>::forward_iterator&, scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>::difference_type, scn::v4::ranges::default_sentinel_t) const
std::__1::enable_if<(input_or_output_iterator<char const*>)&&(sentinel_for<char const*, char const*>), scn::v4::ranges::incrementable_traits<char const*>::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<char const*, char const*>(char const*&, scn::v4::ranges::incrementable_traits<char const*>::difference_type, char const*) const
Line
Count
Source
282
47.2k
    {
283
47.2k
        return n - fn::impl_i_n_s(i, n, bound);
284
47.2k
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(sentinel_for<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<wchar_t const*>)&&(sentinel_for<wchar_t const*, wchar_t const*>), scn::v4::ranges::incrementable_traits<wchar_t const*>::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<wchar_t const*, wchar_t const*>(wchar_t const*&, scn::v4::ranges::incrementable_traits<wchar_t const*>::difference_type, wchar_t const*) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>)&&(sentinel_for<scn::v4::ranges::default_sentinel_t, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>), scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>(scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator&, scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type, scn::v4::ranges::default_sentinel_t) const
std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true>) const
Line
Count
Source
282
806
    {
283
806
        return n - fn::impl_i_n_s(i, n, bound);
284
806
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >), scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type>::type scn::v4::ranges::detail::advance_::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >&, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true>) const
285
};
286
}  // namespace detail::advance_
287
288
inline constexpr auto advance = detail::advance_::fn{};
289
290
namespace next_impl {
291
struct fn {
292
    template <typename I>
293
    constexpr auto operator()(I x) const
294
        -> std::enable_if_t<input_or_output_iterator<I>, I>
295
203M
    {
296
203M
        ++x;
297
203M
        return x;
298
203M
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>, scn::v4::detail::basic_scan_buffer<char>::forward_iterator>::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>(scn::v4::detail::basic_scan_buffer<char>::forward_iterator) const
std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>) const
Line
Count
Source
295
2.47k
    {
296
2.47k
        ++x;
297
2.47k
        return x;
298
2.47k
    }
std::__1::enable_if<input_or_output_iterator<char const*>, char const*>::type scn::v4::ranges::next_impl::fn::operator()<char const*>(char const*) const
Line
Count
Source
295
39.8k
    {
296
39.8k
        ++x;
297
39.8k
        return x;
298
39.8k
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>(scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator) const
std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>) const
Line
Count
Source
295
1.44k
    {
296
1.44k
        ++x;
297
1.44k
        return x;
298
1.44k
    }
std::__1::enable_if<input_or_output_iterator<wchar_t const*>, wchar_t const*>::type scn::v4::ranges::next_impl::fn::operator()<wchar_t const*>(wchar_t const*) const
Line
Count
Source
295
203M
    {
296
203M
        ++x;
297
203M
        return x;
298
203M
    }
299
300
    template <typename I>
301
    constexpr auto operator()(I x, iter_difference_t<I> n) const
302
        -> std::enable_if_t<input_or_output_iterator<I>, I>
303
61.0k
    {
304
61.0k
        ranges::advance(x, n);
305
61.0k
        return x;
306
61.0k
    }
std::__1::enable_if<input_or_output_iterator<char const*>, char const*>::type scn::v4::ranges::next_impl::fn::operator()<char const*>(char const*, scn::v4::ranges::incrementable_traits<char const*>::difference_type) const
Line
Count
Source
303
55.3k
    {
304
55.3k
        ranges::advance(x, n);
305
55.3k
        return x;
306
55.3k
    }
std::__1::enable_if<input_or_output_iterator<wchar_t const*>, wchar_t const*>::type scn::v4::ranges::next_impl::fn::operator()<wchar_t const*>(wchar_t const*, scn::v4::ranges::incrementable_traits<wchar_t const*>::difference_type) const
Line
Count
Source
303
5.59k
    {
304
5.59k
        ranges::advance(x, n);
305
5.59k
        return x;
306
5.59k
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>, scn::v4::detail::basic_scan_buffer<char>::forward_iterator>::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>(scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<char>::forward_iterator>::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type) const
std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type) const
Line
Count
Source
303
102
    {
304
102
        ranges::advance(x, n);
305
102
        return x;
306
102
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>(scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::incrementable_traits<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v4::ranges::incrementable_traits<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type) const
307
308
    template <typename I, typename S>
309
    constexpr auto operator()(I x, S bound) const
310
        -> std::enable_if_t<input_or_output_iterator<I> && sentinel_for<S, I>,
311
                            I>
312
2.03k
    {
313
2.03k
        ranges::advance(x, bound);
314
2.03k
        return x;
315
2.03k
    }
std::__1::enable_if<(input_or_output_iterator<char const*>)&&(sentinel_for<char const*, char const*>), char const*>::type scn::v4::ranges::next_impl::fn::operator()<char const*, char const*>(char const*, char const*) const
Line
Count
Source
312
886
    {
313
886
        ranges::advance(x, bound);
314
886
        return x;
315
886
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >), scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>) const
std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >), scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>) const
Line
Count
Source
312
168
    {
313
168
        ranges::advance(x, bound);
314
168
        return x;
315
168
    }
std::__1::enable_if<(input_or_output_iterator<wchar_t const*>)&&(sentinel_for<wchar_t const*, wchar_t const*>), wchar_t const*>::type scn::v4::ranges::next_impl::fn::operator()<wchar_t const*, wchar_t const*>(wchar_t const*, wchar_t const*) const
Line
Count
Source
312
898
    {
313
898
        ranges::advance(x, bound);
314
898
        return x;
315
898
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >), scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>) const
std::__1::enable_if<(input_or_output_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(sentinel_for<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >), scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::type scn::v4::ranges::next_impl::fn::operator()<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>) const
Line
Count
Source
312
84
    {
313
84
        ranges::advance(x, bound);
314
84
        return x;
315
84
    }
316
317
    template <typename I, typename S>
318
    constexpr auto operator()(I x, iter_difference_t<I> n, S bound) const
319
        -> std::enable_if_t<input_or_output_iterator<I> && sentinel_for<S, I>,
320
                            I>
321
    {
322
        ranges::advance(x, n, bound);
323
        return x;
324
    }
325
};
326
}  // namespace next_impl
327
328
inline constexpr next_impl::fn next{};
329
330
// prev, for forward_iterators
331
namespace detail::prev_backtrack_ {
332
struct fn {
333
private:
334
    template <typename It>
335
    static constexpr auto impl(It it, It, priority_tag<2>)
336
        -> std::enable_if_t<bidirectional_iterator<It>, It>
337
    {
338
        --it;
339
        return it;
340
    }
341
342
    template <typename It>
343
    static constexpr auto impl(It it, It beg, priority_tag<1>)
344
        -> remove_cvref_t<decltype((void)beg.batch_advance(42), it)>
345
    {
346
        return beg.batch_advance(it.position() - 1);
347
    }
348
349
    template <typename It>
350
    static constexpr auto impl(It it, It beg, priority_tag<0>)
351
        -> std::enable_if_t<forward_iterator<It>, It>
352
    {
353
        SCN_EXPECT(it != beg);
354
355
        while (true) {
356
            auto tmp = beg;
357
            ++beg;
358
            if (beg == it) {
359
                return tmp;
360
            }
361
        }
362
    }
363
364
public:
365
    template <typename It>
366
    constexpr auto operator()(It it, It beg) const
367
        -> decltype(fn::impl(it, beg, priority_tag<2>{}))
368
    {
369
        return fn::impl(it, beg, priority_tag<2>{});
370
    }
371
};
372
}  // namespace detail::prev_backtrack_
373
374
inline constexpr auto prev_backtrack = detail::prev_backtrack_::fn{};
375
376
// operator<, for forward_iterators
377
namespace detail::less_backtrack_ {
378
struct fn {
379
private:
380
    template <typename It>
381
    static constexpr auto impl(It lhs, It rhs, It, priority_tag<2>)
382
        -> decltype(static_cast<void>(lhs < rhs), true)
383
    {
384
        return lhs < rhs;
385
    }
386
387
    template <typename It>
388
    static constexpr auto impl(It lhs, It rhs, It, priority_tag<1>)
389
        -> decltype(static_cast<void>(lhs.position() < rhs.position()), true)
390
    {
391
        return lhs.position() < rhs.position();
392
    }
393
394
    template <typename It>
395
    static constexpr auto impl(It lhs, It rhs, It beg, priority_tag<0>)
396
        -> std::enable_if_t<ranges::forward_iterator<It>, bool>
397
    {
398
        while (true) {
399
            if (beg == rhs) {
400
                return false;
401
            }
402
            if (beg == lhs) {
403
                return true;
404
            }
405
            ++beg;
406
        }
407
    }
408
409
public:
410
    template <typename It>
411
    constexpr auto operator()(It lhs, It rhs, It beg) const
412
        -> decltype(fn::impl(lhs, rhs, beg, priority_tag<2>{}))
413
    {
414
        return fn::impl(lhs, rhs, beg, priority_tag<2>{});
415
    }
416
};
417
}  // namespace detail::less_backtrack_
418
419
inline constexpr auto less_backtrack = detail::less_backtrack_::fn{};
420
421
}  // namespace ranges
422
423
/////////////////////////////////////////////////////////////////
424
// ASCII-only locale-free <cctype>
425
/////////////////////////////////////////////////////////////////
426
427
namespace impl {
428
inline constexpr std::array<bool, 256> is_ascii_space_lookup = {
429
    {false, false, false, false, false, false, false, false, false, true,
430
     true,  true,  true,  true,  false, false, false, false, false, false,
431
     false, false, false, false, false, false, false, false, false, false,
432
     false, false, true,  false, false, false, false, false, false, false,
433
     false, false, false, false, false, false, false, false, false, false,
434
     false, false, false, false, false, false, false, false, false, false,
435
     false, false, false, false, false, false, false, false, false, false,
436
     false, false, false, false, false, false, false, false, false, false,
437
     false, false, false, false, false, false, false, false, false, false,
438
     false, false, false, false, false, false, false, false, false, false,
439
     false, false, false, false, false, false, false, false, false, false,
440
     false, false, false, false, false, false, false, false, false, false,
441
     false, false, false, false, false, false, false, false, false, false,
442
     false, false, false, false, false, false, false, false, false, false,
443
     false, false, false, false, false, false, false, false, false, false,
444
     false, false, false, false, false, false, false, false, false, false,
445
     false, false, false, false, false, false, false, false, false, false,
446
     false, false, false, false, false, false, false, false, false, false,
447
     false, false, false, false, false, false, false, false, false, false,
448
     false, false, false, false, false, false, false, false, false, false,
449
     false, false, false, false, false, false, false, false, false, false,
450
     false, false, false, false, false, false, false, false, false, false,
451
     false, false, false, false, false, false, false, false, false, false,
452
     false, false, false, false, false, false, false, false, false, false,
453
     false, false, false, false, false, false, false, false, false, false,
454
     false, false, false, false, false, false}};
455
456
constexpr bool is_ascii_space(char ch) noexcept
457
37.5k
{
458
37.5k
    return is_ascii_space_lookup[static_cast<size_t>(
459
37.5k
        static_cast<unsigned char>(ch))];
460
37.5k
}
461
462
constexpr bool is_ascii_space(wchar_t ch) noexcept
463
0
{
464
0
    return ch == 0x20 || (ch >= 0x09 && ch <= 0x0d);
465
0
}
466
467
constexpr bool is_ascii_char(char ch) noexcept
468
308k
{
469
308k
    return static_cast<unsigned char>(ch) <= 127;
470
308k
}
471
472
constexpr bool is_ascii_char(wchar_t ch) noexcept
473
3.50k
{
474
3.50k
#if WCHAR_MIN < 0
475
3.50k
    return ch >= 0 && ch <= 127;
476
#else
477
    return ch <= 127;
478
#endif
479
3.50k
}
480
481
constexpr bool is_ascii_char(char32_t cp) noexcept
482
337k
{
483
337k
    return cp <= 127;
484
337k
}
485
486
/////////////////////////////////////////////////////////////////
487
// <bits>
488
/////////////////////////////////////////////////////////////////
489
490
inline int count_trailing_zeroes(uint64_t val)
491
0
{
492
0
    SCN_EXPECT(val != 0);
493
0
#if SCN_HAS_BITOPS
494
0
    return std::countr_zero(val);
495
0
#elif SCN_GCC_COMPAT
496
0
    return __builtin_ctzll(val);
497
0
#elif SCN_MSVC && SCN_WINDOWS_64BIT
498
0
    DWORD ret{};
499
0
    _BitScanForward64(&ret, val);
500
0
    return static_cast<int>(ret);
501
0
#elif SCN_MSVC && !SCN_WINDOWS_64BIT
502
0
    DWORD ret{};
503
0
    if (_BitScanForward(&ret, static_cast<uint32_t>(val))) {
504
0
        return static_cast<int>(ret);
505
0
    }
506
0
507
0
    _BitScanForward(&ret, static_cast<uint32_t>(val >> 32));
508
0
    return static_cast<int>(ret + 32);
509
0
#elif SCN_POSIX
510
0
    return ::ctzll(val);
511
0
#else
512
0
#define SCN_HAS_BITS_CTZ 0
513
0
    SCN_EXPECT(false);
514
0
    SCN_UNREACHABLE;
515
0
#endif
516
0
}
517
518
#ifndef SCN_HAS_BITS_CTZ
519
#define SCN_HAS_BITS_CTZ 1
520
#endif
521
522
constexpr uint64_t has_zero_byte(uint64_t word)
523
0
{
524
0
    return (word - 0x0101010101010101ull) & ~word & 0x8080808080808080ull;
525
0
}
526
527
constexpr uint64_t has_byte_between(uint64_t word, uint8_t a, uint8_t b)
528
0
{
529
0
    const auto m = static_cast<uint64_t>(a) - 1,
530
0
               n = static_cast<uint64_t>(b) + 1;
531
0
    return (((~0ull / 255 * (127 + (n)) - ((word) & ~0ull / 255 * 127)) &
532
0
             ~(word) &
533
0
             (((word) & ~0ull / 255 * 127) + ~0ull / 255 * (127 - (m)))) &
534
0
            (~0ull / 255 * 128));
535
0
}
536
537
constexpr uint64_t has_byte_greater(uint64_t word, uint8_t n)
538
29.7k
{
539
29.7k
    return (word + ~0ull / 255 * (127 - n) | word) & ~0ull / 255 * 128;
540
29.7k
}
541
542
inline size_t get_index_of_first_nonmatching_byte(uint64_t word)
543
0
{
544
0
    word ^= 0x8080808080808080ull;
545
0
    if (word == 0) {
546
0
        return 8;
547
0
    }
548
0
    return static_cast<size_t>(count_trailing_zeroes(word)) / 8;
549
0
}
550
551
inline size_t get_index_of_first_matching_byte(uint64_t word, uint64_t pattern)
552
0
{
553
0
    constexpr auto mask = 0x7f7f7f7f7f7f7f7full;
554
0
    auto input = word ^ pattern;
555
0
    auto tmp = (input & mask) + mask;
556
0
    tmp = ~(tmp | input | mask);
557
0
    return static_cast<size_t>(count_trailing_zeroes(tmp)) / 8;
558
0
}
559
560
constexpr uint32_t log2_fast(uint32_t val)
561
0
{
562
0
    constexpr uint8_t lookup[] = {0,  9,  1,  10, 13, 21, 2,  29, 11, 14, 16,
563
0
                                  18, 22, 25, 3,  30, 8,  12, 20, 28, 15, 17,
564
0
                                  24, 7,  19, 27, 23, 6,  26, 5,  4,  31};
565
0
566
0
    val |= val >> 1;
567
0
    val |= val >> 2;
568
0
    val |= val >> 4;
569
0
    val |= val >> 8;
570
0
    val |= val >> 16;
571
0
572
0
    return static_cast<uint32_t>(lookup[(val * 0x07c4acddu) >> 27]);
573
0
}
574
575
constexpr uint32_t log2_pow2_fast(uint32_t val)
576
0
{
577
0
    constexpr uint8_t lookup[] = {0,  1,  28, 2,  29, 14, 24, 3,  30, 22, 20,
578
0
                                  15, 25, 17, 4,  8,  31, 27, 13, 23, 21, 19,
579
0
                                  16, 7,  26, 12, 18, 6,  11, 5,  10, 9};
580
0
581
0
    return static_cast<uint32_t>(lookup[(val * 0x077cb531u) >> 27]);
582
0
}
583
584
constexpr uint64_t byteswap(uint64_t val)
585
0
{
586
0
    return (val & 0xFF00000000000000) >> 56 | (val & 0x00FF000000000000) >> 40 |
587
0
           (val & 0x0000FF0000000000) >> 24 | (val & 0x000000FF00000000) >> 8 |
588
0
           (val & 0x00000000FF000000) << 8 | (val & 0x0000000000FF0000) << 24 |
589
0
           (val & 0x000000000000FF00) << 40 | (val & 0x00000000000000FF) << 56;
590
0
}
591
592
/////////////////////////////////////////////////////////////////
593
// <function_ref>
594
/////////////////////////////////////////////////////////////////
595
596
namespace fnref_detail {
597
template <class T>
598
inline constexpr auto select_param_type = [] {
599
    if constexpr (std::is_trivially_copyable_v<T>) {
600
        return detail::type_identity<T>();
601
    }
602
    else {
603
        return std::add_rvalue_reference<T>();
604
    }
605
};
606
607
template <class T>
608
using param_t =
609
    typename std::invoke_result_t<decltype(select_param_type<T>)>::type;
610
611
template <typename Sig>
612
struct qual_fn_sig;
613
614
template <typename R, typename... Args>
615
struct qual_fn_sig<R(Args...)> {
616
    using function = R(Args...);
617
618
    static constexpr bool is_noexcept = false;
619
620
    template <typename... T>
621
    static constexpr bool is_invocable_using =
622
        std::is_invocable_r_v<R, T..., Args...>;
623
624
    template <typename T>
625
    using cv = T;
626
};
627
628
template <typename R, typename... Args>
629
struct qual_fn_sig<R(Args...) noexcept> {
630
    using function = R(Args...);
631
632
    static constexpr bool is_noexcept = true;
633
634
    template <typename... T>
635
    static constexpr bool is_invocable_using =
636
        std::is_nothrow_invocable_r_v<R, T..., Args...>;
637
638
    template <typename T>
639
    using cv = T;
640
};
641
642
template <typename R, typename... Args>
643
struct qual_fn_sig<R(Args...) const> : qual_fn_sig<R(Args...)> {
644
    template <typename T>
645
    using cv = T const;
646
};
647
648
template <typename R, typename... Args>
649
struct qual_fn_sig<R(Args...) const noexcept>
650
    : qual_fn_sig<R(Args...) noexcept> {
651
    template <typename T>
652
    using cv = T const;
653
};
654
655
struct base {
656
    union storage {
657
        constexpr storage() = default;
658
659
        template <typename T, std::enable_if_t<std::is_object_v<T>>* = nullptr>
660
97.3k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
97.3k
        {
662
97.3k
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2INSt3__110__not_fn_tINS1_12function_refIFbcES9_EEEETnPNS6_9enable_ifIXsr3stdE11is_object_vIT_EEvE4typeELPv0EEEPSD_
Line
Count
Source
660
2.67k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
2.67k
        {
662
2.67k
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2INSt3__110__not_fn_tINS1_12function_refIFbDiES9_EEEETnPNS6_9enable_ifIXsr3stdE11is_object_vIT_EEvE4typeELPv0EEEPSD_
Line
Count
Source
660
23.7k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
23.7k
        {
662
23.7k
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_EUlDiE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEENS1_15take_width_viewINSA_ISG_SH_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_iEUlcE_TnPNSQ_9enable_ifIXsr3stdE11is_object_vISS_EEvE4typeELPv0EEEPSS_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_iEUlcE_TnPNSI_9enable_ifIXsr3stdE11is_object_vISK_EEvE4typeELPv0EEEPSK_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_20calculate_text_widthIcEEmNSt3__117basic_string_viewIT_NS7_11char_traitsIS9_EEEEEUlDiE_TnPNS7_9enable_ifIXsr3stdE11is_object_vIS9_EEvE4typeELPv0EEEPS9_
Line
Count
Source
660
35.1k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
35.1k
        {
662
35.1k
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESH_EUlDiE_TnPNS8_9enable_ifIXsr3stdE11is_object_vISH_EEvE4typeELPv0EEEPSH_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESG_EUlDiE_TnPNS8_9enable_ifIXsr3stdE11is_object_vISG_EEvE4typeELPv0EEEPSG_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSE_EENS1_15take_width_viewINSA_ISE_SE_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_iEUlcE_TnPNSN_9enable_ifIXsr3stdE11is_object_vISP_EEvE4typeELPv0EEEPSP_
Line
Count
Source
660
1.01k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
1.01k
        {
662
1.01k
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_TnPNSG_9enable_ifIXsr3stdE11is_object_vISI_EEvE4typeELPv0EEEPSI_
Line
Count
Source
660
534
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
534
        {
662
534
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_EUlcE_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE0_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEST_NSR_17basic_string_viewIcNSR_11char_traitsIcEEEEEUlcE_TnPNSR_9enable_ifIXsr3stdE11is_object_vIST_EEvE4typeELPv0EEEPST_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE0_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_EUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEEUlcE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlcE_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE0_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
Line
Count
Source
660
8
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
8
        {
662
8
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESQ_NSO_17basic_string_viewIcNSO_11char_traitsIcEEEEEUlcE_TnPNSO_9enable_ifIXsr3stdE11is_object_vISQ_EEvE4typeELPv0EEEPSQ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE0_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
Line
Count
Source
660
350
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
350
        {
662
350
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEEEUlcE_TnPNSG_9enable_ifIXsr3stdE11is_object_vISI_EEvE4typeELPv0EEEPSI_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
22
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
22
        {
662
22
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
12
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
12
        {
662
12
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
346
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
346
        {
662
346
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
6
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
6
        {
662
6
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
278
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
278
        {
662
278
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlcE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_TnPNSG_9enable_ifIXsr3stdE11is_object_vISI_EEvE4typeELPv0EEEPSI_
Line
Count
Source
660
948
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
948
        {
662
948
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlcE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
40
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
40
        {
662
40
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
30
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
30
        {
662
30
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlcE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlcE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
40
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
40
        {
662
40
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
30
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
30
        {
662
30
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlcE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlcE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
40
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
40
        {
662
40
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
30
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
30
        {
662
30
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlcE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlcE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
_ZN3scn2v44impl12fnref_detail4base7storageC2INSt3__110__not_fn_tINS1_12function_refIFbwES9_EEEETnPNS6_9enable_ifIXsr3stdE11is_object_vIT_EEvE4typeELPv0EEEPSD_
Line
Count
Source
660
2.54k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
2.54k
        {
662
2.54k
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_EUlDiE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEENS1_15take_width_viewINSA_ISG_SH_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_iEUlwE_TnPNSQ_9enable_ifIXsr3stdE11is_object_vISS_EEvE4typeELPv0EEEPSS_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_iEUlwE_TnPNSI_9enable_ifIXsr3stdE11is_object_vISK_EEvE4typeELPv0EEEPSK_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_20calculate_text_widthIwEEmNSt3__117basic_string_viewIT_NS7_11char_traitsIS9_EEEEEUlDiE_TnPNS7_9enable_ifIXsr3stdE11is_object_vIS9_EEvE4typeELPv0EEEPS9_
Line
Count
Source
660
3.28k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
3.28k
        {
662
3.28k
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESH_EUlDiE_TnPNS8_9enable_ifIXsr3stdE11is_object_vISH_EEvE4typeELPv0EEEPSH_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESG_EUlDiE_TnPNS8_9enable_ifIXsr3stdE11is_object_vISG_EEvE4typeELPv0EEEPSG_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESE_EUlDiE_TnPNS7_9enable_ifIXsr3stdE11is_object_vISE_EEvE4typeELPv0EEEPSE_
Line
Count
Source
660
4.99k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
4.99k
        {
662
4.99k
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSE_EENS1_15take_width_viewINSA_ISE_SE_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_iEUlwE_TnPNSN_9enable_ifIXsr3stdE11is_object_vISP_EEvE4typeELPv0EEEPSP_
Line
Count
Source
660
546
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
546
        {
662
546
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_TnPNSG_9enable_ifIXsr3stdE11is_object_vISI_EEvE4typeELPv0EEEPSI_
Line
Count
Source
660
396
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
396
        {
662
396
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESG_EUlDiE_TnPNSE_9enable_ifIXsr3stdE11is_object_vISG_EEvE4typeELPv0EEEPSG_
Line
Count
Source
660
11.6k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
11.6k
        {
662
11.6k
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_EUlwE_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE0_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEST_NSR_17basic_string_viewIcNSR_11char_traitsIcEEEEEUlwE_TnPNSR_9enable_ifIXsr3stdE11is_object_vIST_EEvE4typeELPv0EEEPST_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE0_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_EUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEEUlwE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlwE_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE0_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
Line
Count
Source
660
22
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
22
        {
662
22
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESQ_NSO_17basic_string_viewIcNSO_11char_traitsIcEEEEEUlwE_TnPNSO_9enable_ifIXsr3stdE11is_object_vISQ_EEvE4typeELPv0EEEPSQ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE0_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
Line
Count
Source
660
204
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
204
        {
662
204
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEEEUlwE_TnPNSG_9enable_ifIXsr3stdE11is_object_vISI_EEvE4typeELPv0EEEPSI_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
28
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
28
        {
662
28
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
14
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
14
        {
662
14
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
180
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
180
        {
662
180
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
14
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
14
        {
662
14
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
430
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
430
        {
662
430
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlwE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_TnPNSG_9enable_ifIXsr3stdE11is_object_vISI_EEvE4typeELPv0EEEPSI_
Line
Count
Source
660
474
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
474
        {
662
474
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlwE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
14
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
14
        {
662
14
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESG_EUlDiE_TnPNSE_9enable_ifIXsr3stdE11is_object_vISG_EEvE4typeELPv0EEEPSG_
Line
Count
Source
660
2.49k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
2.49k
        {
662
2.49k
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
38
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
38
        {
662
38
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlwE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlwE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
14
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
14
        {
662
14
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
38
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
38
        {
662
38
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlwE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlwE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlwE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlwE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
14
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
14
        {
662
14
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
38
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
38
        {
662
38
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESE_EUlDiE_TnPNS7_9enable_ifIXsr3stdE11is_object_vISE_EEvE4typeELPv0EEEPSE_
Line
Count
Source
660
52
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
52
        {
662
52
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
624
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
624
        {
662
624
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
2.28k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
2.28k
        {
662
2.28k
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
476
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
476
        {
662
476
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
1.17k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
1.17k
        {
662
1.17k
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
663
664
        template <typename T, std::enable_if_t<std::is_object_v<T>>* = nullptr>
665
6.95k
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
6.95k
        {
667
6.95k
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_lRKNSC_9fill_typeEbEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPKSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_lRKNSB_9fill_typeEbEUlcE_TnPNSI_9enable_ifIXsr3stdE11is_object_vISK_EEvE4typeELPv0EEEPKSK_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlcE_TnPNS8_9enable_ifIXsr3stdE11is_object_vISH_EEvE4typeELPv0EEEPKSH_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_9skip_fillINSt3__117basic_string_viewIcNS7_11char_traitsIcEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbEUlcE_TnPNS7_9enable_ifIXsr3stdE11is_object_vISF_EEvE4typeELPv0EEEPKSF_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlcE_TnPNSF_9enable_ifIXsr3stdE11is_object_vISH_EEvE4typeELPv0EEEPKSH_
Line
Count
Source
665
494
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
494
        {
667
494
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlDiE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPKSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlcE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPKSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlDiE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPKSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPKSM_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlDiE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPKSL_
Line
Count
Source
665
474
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
474
        {
667
474
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlcE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPKSL_
Line
Count
Source
665
348
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
348
        {
667
348
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPKSJ_
Line
Count
Source
665
2.38k
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
2.38k
        {
667
2.38k
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPKSJ_
Line
Count
Source
665
234
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
234
        {
667
234
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_lRKNSC_9fill_typeEbEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPKSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_lRKNSB_9fill_typeEbEUlwE_TnPNSI_9enable_ifIXsr3stdE11is_object_vISK_EEvE4typeELPv0EEEPKSK_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlwE_TnPNS8_9enable_ifIXsr3stdE11is_object_vISH_EEvE4typeELPv0EEEPKSH_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_9skip_fillINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbEUlwE_TnPNS7_9enable_ifIXsr3stdE11is_object_vISF_EEvE4typeELPv0EEEPKSF_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlwE_TnPNSF_9enable_ifIXsr3stdE11is_object_vISH_EEvE4typeELPv0EEEPKSH_
Line
Count
Source
665
1.11k
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
1.11k
        {
667
1.11k
        }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlDiE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPKSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlwE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPKSO_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlDiE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPKSM_
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPKSM_
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlDiE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPKSL_
Line
Count
Source
665
270
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
270
        {
667
270
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlwE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPKSL_
Line
Count
Source
665
162
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
162
        {
667
162
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPKSJ_
Line
Count
Source
665
390
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
390
        {
667
390
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPKSJ_
Line
Count
Source
665
150
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
150
        {
667
150
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNS0_6detail9fill_typeEbEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPKSJ_
Line
Count
Source
665
472
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
472
        {
667
472
        }
_ZN3scn2v44impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNS0_6detail9fill_typeEbEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPKSJ_
Line
Count
Source
665
460
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
460
        {
667
460
        }
668
669
        template <typename F,
670
                  std::enable_if_t<std::is_function_v<F>>* = nullptr>
671
        constexpr explicit storage(F* f) noexcept
672
            : m_fp(reinterpret_cast<decltype(m_fp)>(f))
673
        {
674
        }
675
676
        void* m_p{nullptr};
677
        const void* m_cp;
678
        void (*m_fp)();
679
    };
680
681
    template <typename T>
682
    static constexpr auto get(storage s)
683
856k
    {
684
856k
        if constexpr (std::is_const_v<T>) {
685
355k
            return static_cast<T*>(s.m_cp);
686
        }
687
501k
        else if constexpr (std::is_object_v<T>) {
688
501k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
856k
    }
auto scn::v4::impl::fnref_detail::base::get<std::__1::__not_fn_t<scn::v4::impl::function_ref<bool (char), bool (char)> > >(scn::v4::impl::fnref_detail::base::storage)
Line
Count
Source
683
6.86k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
6.86k
        else if constexpr (std::is_object_v<T>) {
688
6.86k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
6.86k
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESL_lRKNSB_9fill_typeEbEUlcE_EEDaNS3_7storageE
auto scn::v4::impl::fnref_detail::base::get<std::__1::__not_fn_t<scn::v4::impl::function_ref<bool (char32_t), bool (char32_t)> > >(scn::v4::impl::fnref_detail::base::storage)
Line
Count
Source
683
352k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
352k
        else if constexpr (std::is_object_v<T>) {
688
352k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
352k
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS6_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNSA_9fill_typeEbEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEENS1_15take_width_viewINS9_ISF_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_iEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_iEUlcE_EEDaNS3_7storageE
auto scn::v4::impl::fnref_detail::base::get<scn::v4::impl::calculate_text_width<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >)::{lambda(char32_t)#1}>(scn::v4::impl::fnref_detail::base::storage)
Line
Count
Source
683
46.8k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
46.8k
        else if constexpr (std::is_object_v<T>) {
688
46.8k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
46.8k
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIcNS7_11char_traitsIcEEEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS0_6detail9fill_typeEbEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS6_INSt3__117basic_string_viewIcNS7_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESG_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS7_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESF_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNS1_9skip_fillINSt3__117basic_string_viewIcNS6_11char_traitsIcEEEEEENS0_13scan_expectedINS6_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESE_lRKNS0_6detail9fill_typeEbEUlcE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSD_EENS1_15take_width_viewINS9_ISD_SD_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_iEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
1.01k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
1.01k
        else if constexpr (std::is_object_v<T>) {
688
1.01k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
1.01k
    }
_ZN3scn2v44impl12fnref_detail4base3getIKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS0_6detail9fill_typeEbEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
912
    {
684
912
        if constexpr (std::is_const_v<T>) {
685
912
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
912
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
1.46k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
1.46k
        else if constexpr (std::is_object_v<T>) {
688
1.46k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
1.46k
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_EUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlcE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESS_NSQ_17basic_string_viewIcNSQ_11char_traitsIcEEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlcE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_EUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlcE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlcE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_EUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlcE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlcE0_EEDaNS3_7storageE
Line
Count
Source
683
8
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
8
        else if constexpr (std::is_object_v<T>) {
688
8
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
8
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESP_NSN_17basic_string_viewIcNSN_11char_traitsIcEEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlcE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlcE0_EEDaNS3_7storageE
Line
Count
Source
683
350
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
350
        else if constexpr (std::is_object_v<T>) {
688
350
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
350
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_EUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlcE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlcE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlcE0_EEDaNS3_7storageE
Line
Count
Source
683
22
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
22
        else if constexpr (std::is_object_v<T>) {
688
22
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
22
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Line
Count
Source
683
12
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
12
        else if constexpr (std::is_object_v<T>) {
688
12
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
12
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Line
Count
Source
683
346
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
346
        else if constexpr (std::is_object_v<T>) {
688
346
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
346
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Line
Count
Source
683
6
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
6
        else if constexpr (std::is_object_v<T>) {
688
6
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
6
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Line
Count
Source
683
278
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
278
        else if constexpr (std::is_object_v<T>) {
688
278
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
278
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_12basic_stringIT0_NSL_11char_traitsISX_EENSL_9allocatorISX_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_NS6_12specs_helperEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISV_EENSJ_9allocatorISV_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS6_12specs_helperEEUlcE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
11.5k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
11.5k
        else if constexpr (std::is_object_v<T>) {
688
11.5k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
11.5k
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISV_EENSI_9allocatorISV_EEEEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
706
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
706
        else if constexpr (std::is_object_v<T>) {
688
706
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
706
    }
_ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
12.1k
    {
684
12.1k
        if constexpr (std::is_const_v<T>) {
685
12.1k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
12.1k
    }
_ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS6_12specs_helperEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
6.94k
    {
684
6.94k
        if constexpr (std::is_const_v<T>) {
685
6.94k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
6.94k
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsIST_EENSG_9allocatorIST_EEEEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
698
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
698
        else if constexpr (std::is_object_v<T>) {
688
698
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
698
    }
_ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
316k
    {
684
316k
        if constexpr (std::is_const_v<T>) {
685
316k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
316k
    }
_ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS6_12specs_helperEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
3.28k
    {
684
3.28k
        if constexpr (std::is_const_v<T>) {
685
3.28k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
3.28k
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_12basic_stringIT0_NSL_11char_traitsISX_EENSL_9allocatorISX_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISV_EENSJ_9allocatorISV_EEEEEUlcE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISV_EENSI_9allocatorISV_EEEEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
706
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
706
        else if constexpr (std::is_object_v<T>) {
688
706
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
706
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsIST_EENSG_9allocatorIST_EEEEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
698
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
698
        else if constexpr (std::is_object_v<T>) {
688
698
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
698
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_17basic_string_viewIT0_NSL_11char_traitsISX_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISV_EEEEEUlcE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISV_EEEEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
706
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
706
        else if constexpr (std::is_object_v<T>) {
688
706
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
706
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsIST_EEEEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
698
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
698
        else if constexpr (std::is_object_v<T>) {
688
698
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
698
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_17basic_string_viewIT0_NSL_11char_traitsISX_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISV_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISV_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsIST_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_EEDaNS3_7storageE
auto scn::v4::impl::fnref_detail::base::get<std::__1::__not_fn_t<scn::v4::impl::function_ref<bool (wchar_t), bool (wchar_t)> > >(scn::v4::impl::fnref_detail::base::storage)
Line
Count
Source
683
6.10k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
6.10k
        else if constexpr (std::is_object_v<T>) {
688
6.10k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
6.10k
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESL_lRKNSB_9fill_typeEbEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS6_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNSA_9fill_typeEbEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEENS1_15take_width_viewINS9_ISF_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_iEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_iEUlwE_EEDaNS3_7storageE
auto scn::v4::impl::fnref_detail::base::get<scn::v4::impl::calculate_text_width<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)::{lambda(char32_t)#1}>(scn::v4::impl::fnref_detail::base::storage)
Line
Count
Source
683
8.17k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
8.17k
        else if constexpr (std::is_object_v<T>) {
688
8.17k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
8.17k
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS0_6detail9fill_typeEbEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS6_INSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESG_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESF_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNS1_9skip_fillINSt3__117basic_string_viewIwNS6_11char_traitsIwEEEEEENS0_13scan_expectedINS6_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESE_lRKNS0_6detail9fill_typeEbEUlwE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINSt3__117basic_string_viewIwNS6_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS6_9add_constIT_E4typeEEEEESD_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
4.09k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
4.09k
        else if constexpr (std::is_object_v<T>) {
688
4.09k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
4.09k
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSD_EENS1_15take_width_viewINS9_ISD_SD_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_iEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
570
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
570
        else if constexpr (std::is_object_v<T>) {
688
570
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
570
    }
_ZN3scn2v44impl12fnref_detail4base3getIKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS0_6detail9fill_typeEbEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
1.82k
    {
684
1.82k
        if constexpr (std::is_const_v<T>) {
685
1.82k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
1.82k
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
624
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
624
        else if constexpr (std::is_object_v<T>) {
688
624
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
624
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
15.3k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
15.3k
        else if constexpr (std::is_object_v<T>) {
688
15.3k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
15.3k
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_EUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlwE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESS_NSQ_17basic_string_viewIcNSQ_11char_traitsIcEEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlwE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_EUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlwE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlwE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_EUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlwE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlwE0_EEDaNS3_7storageE
Line
Count
Source
683
24
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
24
        else if constexpr (std::is_object_v<T>) {
688
24
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
24
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESP_NSN_17basic_string_viewIcNSN_11char_traitsIcEEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlwE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlwE0_EEDaNS3_7storageE
Line
Count
Source
683
202
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
202
        else if constexpr (std::is_object_v<T>) {
688
202
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
202
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_EUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlwE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlwE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlwE0_EEDaNS3_7storageE
Line
Count
Source
683
34
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
34
        else if constexpr (std::is_object_v<T>) {
688
34
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
34
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Line
Count
Source
683
14
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
14
        else if constexpr (std::is_object_v<T>) {
688
14
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
14
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Line
Count
Source
683
180
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
180
        else if constexpr (std::is_object_v<T>) {
688
180
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
180
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Line
Count
Source
683
14
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
14
        else if constexpr (std::is_object_v<T>) {
688
14
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
14
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Line
Count
Source
683
430
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
430
        else if constexpr (std::is_object_v<T>) {
688
430
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
430
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_12basic_stringIT0_NSL_11char_traitsISX_EENSL_9allocatorISX_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_NS6_12specs_helperEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISV_EENSJ_9allocatorISV_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS6_12specs_helperEEUlwE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
7.98k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
7.98k
        else if constexpr (std::is_object_v<T>) {
688
7.98k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
7.98k
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISV_EENSI_9allocatorISV_EEEEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
62
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
62
        else if constexpr (std::is_object_v<T>) {
688
62
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
62
    }
_ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
4.07k
    {
684
4.07k
        if constexpr (std::is_const_v<T>) {
685
4.07k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
4.07k
    }
_ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS6_12specs_helperEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
1.63k
    {
684
1.63k
        if constexpr (std::is_const_v<T>) {
685
1.63k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
1.63k
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
22.2k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
22.2k
        else if constexpr (std::is_object_v<T>) {
688
22.2k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
22.2k
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsIST_EENSG_9allocatorIST_EEEEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
488
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
488
        else if constexpr (std::is_object_v<T>) {
688
488
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
488
    }
_ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
4.65k
    {
684
4.65k
        if constexpr (std::is_const_v<T>) {
685
4.65k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
4.65k
    }
_ZN3scn2v44impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS6_12specs_helperEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
1.87k
    {
684
1.87k
        if constexpr (std::is_const_v<T>) {
685
1.87k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
1.87k
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_12basic_stringIT0_NSL_11char_traitsISX_EENSL_9allocatorISX_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISV_EENSJ_9allocatorISV_EEEEEUlwE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISV_EENSI_9allocatorISV_EEEEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
62
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
62
        else if constexpr (std::is_object_v<T>) {
688
62
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
62
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsIST_EENSG_9allocatorIST_EEEEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
488
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
488
        else if constexpr (std::is_object_v<T>) {
688
488
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
488
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_17basic_string_viewIT0_NSL_11char_traitsISX_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISV_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISV_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsIST_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_17basic_string_viewIT0_NSL_11char_traitsISX_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISV_EEEEEUlwE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISV_EEEEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
62
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
62
        else if constexpr (std::is_object_v<T>) {
688
62
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
62
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsIST_EEEEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
488
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
488
        else if constexpr (std::is_object_v<T>) {
688
488
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
488
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINSt3__117basic_string_viewIwNS6_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS6_9add_constIT_E4typeEEEEESD_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
2.75k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
2.75k
        else if constexpr (std::is_object_v<T>) {
688
2.75k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
2.75k
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Line
Count
Source
683
624
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
624
        else if constexpr (std::is_object_v<T>) {
688
624
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
624
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESI_lRKNS0_6detail9fill_typeEbEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
688
    {
684
688
        if constexpr (std::is_const_v<T>) {
685
688
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
688
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS6_INS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
3.39k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
3.39k
        else if constexpr (std::is_object_v<T>) {
688
3.39k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
3.39k
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Line
Count
Source
683
476
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
476
        else if constexpr (std::is_object_v<T>) {
688
476
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
476
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
_ZN3scn2v44impl12fnref_detail4base3getIKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESI_lRKNS0_6detail9fill_typeEbEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
784
    {
684
784
        if constexpr (std::is_const_v<T>) {
685
784
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
784
    }
_ZN3scn2v44impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS6_INS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
1.30k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
1.30k
        else if constexpr (std::is_object_v<T>) {
688
1.30k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
1.30k
    }
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v44impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
694
};
695
}  // namespace fnref_detail
696
697
template <typename Sig,
698
          typename = typename fnref_detail::qual_fn_sig<Sig>::function>
699
class function_ref;
700
701
template <typename Sig, typename R, typename... Args>
702
class function_ref<Sig, R(Args...)> : fnref_detail::base {
703
    using signature = fnref_detail::qual_fn_sig<Sig>;
704
705
    template <typename T>
706
    using cv = typename signature::template cv<T>;
707
    template <typename T>
708
    using cvref = cv<T>&;
709
    static constexpr bool noex = signature::is_noexcept;
710
711
    template <typename... T>
712
    static constexpr bool is_invocable_using =
713
        signature::template is_invocable_using<T...>;
714
715
    using fwd_t = R(storage, fnref_detail::param_t<Args>...) noexcept(noex);
716
717
public:
718
    template <typename F,
719
              std::enable_if_t<std::is_function_v<F> &&
720
                               is_invocable_using<F>>* = nullptr>
721
    /*implicit*/ function_ref(F* f) noexcept
722
        : m_fptr([](storage fn,
723
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
724
              if constexpr (std::is_void_v<R>) {
725
                  get<F>(fn)(static_cast<decltype(args)>(args)...);
726
              }
727
              else {
728
                  return get<F>(fn)(static_cast<decltype(args)>(args)...);
729
              }
730
          }),
731
          m_storage(f)
732
    {
733
        SCN_EXPECT(f != nullptr);
734
    }
735
736
    template <typename F,
737
              typename T = std::remove_reference_t<F>,
738
              std::enable_if_t<detail::is_not_self<F, function_ref> &&
739
                               !std::is_member_pointer_v<T> &&
740
                               is_invocable_using<cvref<T>>>* = nullptr>
741
    /*implicit*/ constexpr function_ref(F&& f) noexcept
742
104k
        : m_fptr([](storage fn,
743
856k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
856k
              cvref<T> obj = *get<T>(fn);
745
856k
              if constexpr (std::is_void_v<R>) {
746
55.0k
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
801k
              else {
749
801k
                  return obj(static_cast<decltype(args)>(args)...);
750
801k
              }
751
856k
          }),
_ZZN3scn2v44impl12function_refIFbcES3_EC1INSt3__110__not_fn_tIS4_EES8_TnPNS6_9enable_ifIXaaaasr6detailE11is_not_selfIT_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSB_EEvE4typeELPv0EEEOSA_ENKUlNS1_12fnref_detail4base7storageEcE_clESK_c
Line
Count
Source
743
6.86k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
6.86k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
6.86k
              else {
749
6.86k
                  return obj(static_cast<decltype(args)>(args)...);
750
6.86k
              }
751
6.86k
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_lRKNSC_9fill_typeEbEUlcE_SV_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES17_c
_ZZN3scn2v44impl12function_refIFbDiES3_EC1INSt3__110__not_fn_tIS4_EES8_TnPNS6_9enable_ifIXaaaasr6detailE11is_not_selfIT_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSB_EEvE4typeELPv0EEEOSA_ENKUlNS1_12fnref_detail4base7storageEDiE_clESK_Di
Line
Count
Source
743
352k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
352k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
352k
              else {
749
352k
                  return obj(static_cast<decltype(args)>(args)...);
750
352k
              }
751
352k
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_EUlDiE_SR_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEDiE_clES12_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEDiE_clES11_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_lRKNSB_9fill_typeEbEUlcE_ST_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSK_ENKUlNS1_12fnref_detail4base7storageEcE_clES15_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEENS1_15take_width_viewINSA_ISG_SH_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_iEUlcE_SY_TnPNSQ_9enable_ifIXaaaasr6detailE11is_not_selfISS_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS10_EEvE4typeELPv0EEEOSS_ENKUlNS1_12fnref_detail4base7storageEcE_clES19_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_iEUlcE_SQ_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSK_ENKUlNS1_12fnref_detail4base7storageEcE_clES11_c
_ZZN3scn2v44impl12function_refIFvDiES3_EC1IZNS1_20calculate_text_widthIcEEmNSt3__117basic_string_viewIT_NS7_11char_traitsIS9_EEEEEUlDiE_SD_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfIS9_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSF_EEvE4typeELPv0EEEOS9_ENKUlNS1_12fnref_detail4base7storageEDiE_clESO_Di
Line
Count
Source
743
46.8k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
46.8k
              cvref<T> obj = *get<T>(fn);
745
46.8k
              if constexpr (std::is_void_v<R>) {
746
46.8k
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
              else {
749
                  return obj(static_cast<decltype(args)>(args)...);
750
              }
751
46.8k
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IRKZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlcE_SR_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESH_EUlDiE_SM_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSO_EEvE4typeELPv0EEEOSH_ENKUlNS1_12fnref_detail4base7storageEDiE_clESX_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_ENKUlNS1_12fnref_detail4base7storageEDiE_clESW_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IRKZNS1_9skip_fillINSt3__117basic_string_viewIcNS7_11char_traitsIcEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbEUlcE_SP_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISF_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSF_ENKUlNS1_12fnref_detail4base7storageEcE_clES11_c
_ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSE_EENS1_15take_width_viewINSA_ISE_SE_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_iEUlcE_SV_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageEcE_clES16_c
Line
Count
Source
743
1.01k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.01k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
1.01k
              else {
749
1.01k
                  return obj(static_cast<decltype(args)>(args)...);
750
1.01k
              }
751
1.01k
          }),
_ZZN3scn2v44impl12function_refIFbcES3_EC1IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlcE_SR_TnPNSF_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Line
Count
Source
743
912
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
912
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
912
              else {
749
912
                  return obj(static_cast<decltype(args)>(args)...);
750
912
              }
751
912
          }),
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_ENKUlNS1_12fnref_detail4base7storageEDiE_clESY_Di
Line
Count
Source
743
1.46k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.46k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
1.46k
              else {
749
1.46k
                  return obj(static_cast<decltype(args)>(args)...);
750
1.46k
              }
751
1.46k
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_EUlcE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEST_NSR_17basic_string_viewIcNSR_11char_traitsIcEEEEEUlcE_S12_TnPNSR_9enable_ifIXaaaasr6detailE11is_not_selfIST_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS14_EEvE4typeELPv0EEEOST_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_EUlcE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEEUlcE_SU_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEcE_clES15_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlcE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEcE_clES18_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEcE_clES18_c
_ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEcE_clES18_c
Line
Count
Source
743
8
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
8
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
8
              else {
749
8
                  return obj(static_cast<decltype(args)>(args)...);
750
8
              }
751
8
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESQ_NSO_17basic_string_viewIcNSO_11char_traitsIcEEEEEUlcE_SZ_TnPNSO_9enable_ifIXaaaasr6detailE11is_not_selfISQ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS11_EEvE4typeELPv0EEEOSQ_ENKUlNS1_12fnref_detail4base7storageEcE_clES1A_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEcE_clES18_c
_ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEcE_clES18_c
Line
Count
Source
743
350
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
350
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
350
              else {
749
350
                  return obj(static_cast<decltype(args)>(args)...);
750
350
              }
751
350
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlcE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES10_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES10_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES10_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEEEUlcE_SR_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSI_ENKUlNS1_12fnref_detail4base7storageEcE_clES12_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES10_c
_ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES10_c
Line
Count
Source
743
22
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
22
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
22
              else {
749
22
                  return obj(static_cast<decltype(args)>(args)...);
750
22
              }
751
22
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
_ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Line
Count
Source
743
12
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
12
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
12
              else {
749
12
                  return obj(static_cast<decltype(args)>(args)...);
750
12
              }
751
12
          }),
_ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Line
Count
Source
743
346
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
346
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
346
              else {
749
346
                  return obj(static_cast<decltype(args)>(args)...);
750
346
              }
751
346
          }),
_ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Line
Count
Source
743
6
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
6
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
6
              else {
749
6
                  return obj(static_cast<decltype(args)>(args)...);
750
6
              }
751
6
          }),
_ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Line
Count
Source
743
278
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
278
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
278
              else {
749
278
                  return obj(static_cast<decltype(args)>(args)...);
750
278
              }
751
278
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEDiE_clES11_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlcE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEcE_clES1F_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlDiE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEDiE_clES18_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlcE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEcE_clES18_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clESZ_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlcE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlDiE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEDiE_clES16_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlcE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES16_c
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_ENKUlNS1_12fnref_detail4base7storageEDiE_clESY_Di
Line
Count
Source
743
11.5k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
11.5k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
11.5k
              else {
749
11.5k
                  return obj(static_cast<decltype(args)>(args)...);
750
11.5k
              }
751
11.5k
          }),
_ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlcE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
Line
Count
Source
743
706
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
706
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
706
              else {
749
706
                  return obj(static_cast<decltype(args)>(args)...);
750
706
              }
751
706
          }),
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlDiE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEDiE_clES15_Di
Line
Count
Source
743
12.1k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
12.1k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
12.1k
              else {
749
12.1k
                  return obj(static_cast<decltype(args)>(args)...);
750
12.1k
              }
751
12.1k
          }),
_ZZN3scn2v44impl12function_refIFbcES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlcE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEcE_clES15_c
Line
Count
Source
743
6.94k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
6.94k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
6.94k
              else {
749
6.94k
                  return obj(static_cast<decltype(args)>(args)...);
750
6.94k
              }
751
6.94k
          }),
_ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlcE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Line
Count
Source
743
698
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
698
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
698
              else {
749
698
                  return obj(static_cast<decltype(args)>(args)...);
750
698
              }
751
698
          }),
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlDiE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clES13_Di
Line
Count
Source
743
316k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
316k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
316k
              else {
749
316k
                  return obj(static_cast<decltype(args)>(args)...);
750
316k
              }
751
316k
          }),
_ZZN3scn2v44impl12function_refIFbcES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlcE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Line
Count
Source
743
3.28k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
3.28k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
3.28k
              else {
749
3.28k
                  return obj(static_cast<decltype(args)>(args)...);
750
3.28k
              }
751
3.28k
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlcE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEcE_clES1F_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlcE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
_ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlcE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
Line
Count
Source
743
706
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
706
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
706
              else {
749
706
                  return obj(static_cast<decltype(args)>(args)...);
750
706
              }
751
706
          }),
_ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlcE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Line
Count
Source
743
698
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
698
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
698
              else {
749
698
                  return obj(static_cast<decltype(args)>(args)...);
750
698
              }
751
698
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlcE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlcE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
_ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlcE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Line
Count
Source
743
706
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
706
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
706
              else {
749
706
                  return obj(static_cast<decltype(args)>(args)...);
750
706
              }
751
706
          }),
_ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlcE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES19_c
Line
Count
Source
743
698
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
698
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
698
              else {
749
698
                  return obj(static_cast<decltype(args)>(args)...);
750
698
              }
751
698
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlcE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlcE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlcE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlcE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES19_c
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clESZ_Di
_ZZN3scn2v44impl12function_refIFbwES3_EC1INSt3__110__not_fn_tIS4_EES8_TnPNS6_9enable_ifIXaaaasr6detailE11is_not_selfIT_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSB_EEvE4typeELPv0EEEOSA_ENKUlNS1_12fnref_detail4base7storageEwE_clESK_w
Line
Count
Source
743
6.10k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
6.10k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
6.10k
              else {
749
6.10k
                  return obj(static_cast<decltype(args)>(args)...);
750
6.10k
              }
751
6.10k
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_lRKNSC_9fill_typeEbEUlwE_SV_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES17_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_EUlDiE_SR_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEDiE_clES12_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEDiE_clES11_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_lRKNSB_9fill_typeEbEUlwE_ST_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSK_ENKUlNS1_12fnref_detail4base7storageEwE_clES15_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEENS1_15take_width_viewINSA_ISG_SH_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_iEUlwE_SY_TnPNSQ_9enable_ifIXaaaasr6detailE11is_not_selfISS_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS10_EEvE4typeELPv0EEEOSS_ENKUlNS1_12fnref_detail4base7storageEwE_clES19_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_iEUlwE_SQ_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSK_ENKUlNS1_12fnref_detail4base7storageEwE_clES11_w
_ZZN3scn2v44impl12function_refIFvDiES3_EC1IZNS1_20calculate_text_widthIwEEmNSt3__117basic_string_viewIT_NS7_11char_traitsIS9_EEEEEUlDiE_SD_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfIS9_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSF_EEvE4typeELPv0EEEOS9_ENKUlNS1_12fnref_detail4base7storageEDiE_clESO_Di
Line
Count
Source
743
8.17k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
8.17k
              cvref<T> obj = *get<T>(fn);
745
8.17k
              if constexpr (std::is_void_v<R>) {
746
8.17k
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
              else {
749
                  return obj(static_cast<decltype(args)>(args)...);
750
              }
751
8.17k
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IRKZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlwE_SR_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESH_EUlDiE_SM_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSO_EEvE4typeELPv0EEEOSH_ENKUlNS1_12fnref_detail4base7storageEDiE_clESX_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_ENKUlNS1_12fnref_detail4base7storageEDiE_clESW_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IRKZNS1_9skip_fillINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbEUlwE_SP_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISF_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSF_ENKUlNS1_12fnref_detail4base7storageEwE_clES11_w
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESE_EUlDiE_SJ_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISE_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSL_EEvE4typeELPv0EEEOSE_ENKUlNS1_12fnref_detail4base7storageEDiE_clESU_Di
Line
Count
Source
743
4.09k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
4.09k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
4.09k
              else {
749
4.09k
                  return obj(static_cast<decltype(args)>(args)...);
750
4.09k
              }
751
4.09k
          }),
_ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSE_EENS1_15take_width_viewINSA_ISE_SE_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_iEUlwE_SV_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageEwE_clES16_w
Line
Count
Source
743
570
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
570
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
570
              else {
749
570
                  return obj(static_cast<decltype(args)>(args)...);
750
570
              }
751
570
          }),
_ZZN3scn2v44impl12function_refIFbwES3_EC1IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlwE_SR_TnPNSF_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Line
Count
Source
743
1.82k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.82k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
1.82k
              else {
749
1.82k
                  return obj(static_cast<decltype(args)>(args)...);
750
1.82k
              }
751
1.82k
          }),
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_ENKUlNS1_12fnref_detail4base7storageEDiE_clESY_Di
Line
Count
Source
743
624
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
624
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
624
              else {
749
624
                  return obj(static_cast<decltype(args)>(args)...);
750
624
              }
751
624
          }),
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNSE_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_ENKUlNS1_12fnref_detail4base7storageEDiE_clESW_Di
Line
Count
Source
743
15.3k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
15.3k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
15.3k
              else {
749
15.3k
                  return obj(static_cast<decltype(args)>(args)...);
750
15.3k
              }
751
15.3k
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_EUlwE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEST_NSR_17basic_string_viewIcNSR_11char_traitsIcEEEEEUlwE_S12_TnPNSR_9enable_ifIXaaaasr6detailE11is_not_selfIST_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS14_EEvE4typeELPv0EEEOST_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_EUlwE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEEUlwE_SU_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEwE_clES15_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlwE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEwE_clES18_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEwE_clES18_w
_ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEwE_clES18_w
Line
Count
Source
743
24
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
24
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
24
              else {
749
24
                  return obj(static_cast<decltype(args)>(args)...);
750
24
              }
751
24
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESQ_NSO_17basic_string_viewIcNSO_11char_traitsIcEEEEEUlwE_SZ_TnPNSO_9enable_ifIXaaaasr6detailE11is_not_selfISQ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS11_EEvE4typeELPv0EEEOSQ_ENKUlNS1_12fnref_detail4base7storageEwE_clES1A_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEwE_clES18_w
_ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEwE_clES18_w
Line
Count
Source
743
202
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
202
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
202
              else {
749
202
                  return obj(static_cast<decltype(args)>(args)...);
750
202
              }
751
202
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlwE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES10_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES10_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES10_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEEEUlwE_SR_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSI_ENKUlNS1_12fnref_detail4base7storageEwE_clES12_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES10_w
_ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES10_w
Line
Count
Source
743
34
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
34
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
34
              else {
749
34
                  return obj(static_cast<decltype(args)>(args)...);
750
34
              }
751
34
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
_ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Line
Count
Source
743
14
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
14
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
14
              else {
749
14
                  return obj(static_cast<decltype(args)>(args)...);
750
14
              }
751
14
          }),
_ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Line
Count
Source
743
180
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
180
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
180
              else {
749
180
                  return obj(static_cast<decltype(args)>(args)...);
750
180
              }
751
180
          }),
_ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Line
Count
Source
743
14
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
14
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
14
              else {
749
14
                  return obj(static_cast<decltype(args)>(args)...);
750
14
              }
751
14
          }),
_ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Line
Count
Source
743
430
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
430
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
430
              else {
749
430
                  return obj(static_cast<decltype(args)>(args)...);
750
430
              }
751
430
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEDiE_clES11_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlwE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEwE_clES1F_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlDiE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEDiE_clES18_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlwE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEwE_clES18_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clESZ_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlwE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlDiE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEDiE_clES16_Di
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlwE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES16_w
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_ENKUlNS1_12fnref_detail4base7storageEDiE_clESY_Di
Line
Count
Source
743
7.98k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
7.98k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
7.98k
              else {
749
7.98k
                  return obj(static_cast<decltype(args)>(args)...);
750
7.98k
              }
751
7.98k
          }),
_ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlwE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
Line
Count
Source
743
62
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
62
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
62
              else {
749
62
                  return obj(static_cast<decltype(args)>(args)...);
750
62
              }
751
62
          }),
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlDiE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEDiE_clES15_Di
Line
Count
Source
743
4.07k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
4.07k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
4.07k
              else {
749
4.07k
                  return obj(static_cast<decltype(args)>(args)...);
750
4.07k
              }
751
4.07k
          }),
_ZZN3scn2v44impl12function_refIFbwES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlwE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEwE_clES15_w
Line
Count
Source
743
1.63k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.63k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
1.63k
              else {
749
1.63k
                  return obj(static_cast<decltype(args)>(args)...);
750
1.63k
              }
751
1.63k
          }),
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNSE_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_ENKUlNS1_12fnref_detail4base7storageEDiE_clESW_Di
Line
Count
Source
743
22.2k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
22.2k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
22.2k
              else {
749
22.2k
                  return obj(static_cast<decltype(args)>(args)...);
750
22.2k
              }
751
22.2k
          }),
_ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlwE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Line
Count
Source
743
488
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
488
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
488
              else {
749
488
                  return obj(static_cast<decltype(args)>(args)...);
750
488
              }
751
488
          }),
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlDiE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clES13_Di
Line
Count
Source
743
4.65k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
4.65k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
4.65k
              else {
749
4.65k
                  return obj(static_cast<decltype(args)>(args)...);
750
4.65k
              }
751
4.65k
          }),
_ZZN3scn2v44impl12function_refIFbwES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlwE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Line
Count
Source
743
1.87k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.87k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
1.87k
              else {
749
1.87k
                  return obj(static_cast<decltype(args)>(args)...);
750
1.87k
              }
751
1.87k
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlwE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEwE_clES1F_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlwE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
_ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlwE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
Line
Count
Source
743
62
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
62
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
62
              else {
749
62
                  return obj(static_cast<decltype(args)>(args)...);
750
62
              }
751
62
          }),
_ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlwE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Line
Count
Source
743
488
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
488
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
488
              else {
749
488
                  return obj(static_cast<decltype(args)>(args)...);
750
488
              }
751
488
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlwE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlwE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlwE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlwE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES19_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlwE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlwE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
_ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlwE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Line
Count
Source
743
62
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
62
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
62
              else {
749
62
                  return obj(static_cast<decltype(args)>(args)...);
750
62
              }
751
62
          }),
_ZZN3scn2v44impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlwE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES19_w
Line
Count
Source
743
488
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
488
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
488
              else {
749
488
                  return obj(static_cast<decltype(args)>(args)...);
750
488
              }
751
488
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clESZ_Di
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESE_EUlDiE_SJ_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISE_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSL_EEvE4typeELPv0EEEOSE_ENKUlNS1_12fnref_detail4base7storageEDiE_clESU_Di
Line
Count
Source
743
2.75k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
2.75k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
2.75k
              else {
749
2.75k
                  return obj(static_cast<decltype(args)>(args)...);
750
2.75k
              }
751
2.75k
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE12read_defaultISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES19_S9_SE_SG_
_ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE12read_defaultISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES19_S9_SE_SG_
Line
Count
Source
743
624
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
624
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
624
              else {
749
624
                  return obj(static_cast<decltype(args)>(args)...);
750
624
              }
751
624
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE12read_defaultISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES19_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE12read_defaultISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1B_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE12read_defaultISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1B_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE12read_defaultISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1B_SB_SH_SI_
_ZZN3scn2v44impl12function_refIFbcES3_EC1IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNS0_6detail9fill_typeEbEUlcE_ST_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES15_c
Line
Count
Source
743
688
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
688
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
688
              else {
749
688
                  return obj(static_cast<decltype(args)>(args)...);
750
688
              }
751
688
          }),
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clESZ_Di
Line
Count
Source
743
3.39k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
3.39k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
3.39k
              else {
749
3.39k
                  return obj(static_cast<decltype(args)>(args)...);
750
3.39k
              }
751
3.39k
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE12read_defaultISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES19_S9_SE_SG_
_ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE12read_defaultISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES19_S9_SE_SG_
Line
Count
Source
743
476
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
476
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
476
              else {
749
476
                  return obj(static_cast<decltype(args)>(args)...);
750
476
              }
751
476
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE12read_defaultISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES19_S9_SE_SG_
_ZZN3scn2v44impl12function_refIFbwES3_EC1IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNS0_6detail9fill_typeEbEUlwE_ST_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES15_w
Line
Count
Source
743
784
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
784
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
784
              else {
749
784
                  return obj(static_cast<decltype(args)>(args)...);
750
784
              }
751
784
          }),
_ZZN3scn2v44impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clESZ_Di
Line
Count
Source
743
1.30k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.30k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
1.30k
              else {
749
1.30k
                  return obj(static_cast<decltype(args)>(args)...);
750
1.30k
              }
751
1.30k
          }),
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE12read_defaultISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1B_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE12read_defaultISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1B_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE12read_defaultISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1B_SB_SH_SI_
752
104k
          m_storage(std::addressof(f))
753
104k
    {
754
104k
    }
_ZN3scn2v44impl12function_refIFbcES3_EC2INSt3__110__not_fn_tIS4_EES8_TnPNS6_9enable_ifIXaaaasr6detailE11is_not_selfIT_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSB_EEvE4typeELPv0EEEOSA_
Line
Count
Source
742
2.67k
        : m_fptr([](storage fn,
743
2.67k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
2.67k
              cvref<T> obj = *get<T>(fn);
745
2.67k
              if constexpr (std::is_void_v<R>) {
746
2.67k
                  obj(static_cast<decltype(args)>(args)...);
747
2.67k
              }
748
2.67k
              else {
749
2.67k
                  return obj(static_cast<decltype(args)>(args)...);
750
2.67k
              }
751
2.67k
          }),
752
2.67k
          m_storage(std::addressof(f))
753
2.67k
    {
754
2.67k
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_lRKNSC_9fill_typeEbEUlcE_SV_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSM_
_ZN3scn2v44impl12function_refIFbDiES3_EC2INSt3__110__not_fn_tIS4_EES8_TnPNS6_9enable_ifIXaaaasr6detailE11is_not_selfIT_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSB_EEvE4typeELPv0EEEOSA_
Line
Count
Source
742
23.7k
        : m_fptr([](storage fn,
743
23.7k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
23.7k
              cvref<T> obj = *get<T>(fn);
745
23.7k
              if constexpr (std::is_void_v<R>) {
746
23.7k
                  obj(static_cast<decltype(args)>(args)...);
747
23.7k
              }
748
23.7k
              else {
749
23.7k
                  return obj(static_cast<decltype(args)>(args)...);
750
23.7k
              }
751
23.7k
          }),
752
23.7k
          m_storage(std::addressof(f))
753
23.7k
    {
754
23.7k
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_EUlDiE_SR_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_lRKNSB_9fill_typeEbEUlcE_ST_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSK_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEENS1_15take_width_viewINSA_ISG_SH_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_iEUlcE_SY_TnPNSQ_9enable_ifIXaaaasr6detailE11is_not_selfISS_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS10_EEvE4typeELPv0EEEOSS_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_iEUlcE_SQ_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSK_
_ZN3scn2v44impl12function_refIFvDiES3_EC2IZNS1_20calculate_text_widthIcEEmNSt3__117basic_string_viewIT_NS7_11char_traitsIS9_EEEEEUlDiE_SD_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfIS9_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSF_EEvE4typeELPv0EEEOS9_
Line
Count
Source
742
35.1k
        : m_fptr([](storage fn,
743
35.1k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
35.1k
              cvref<T> obj = *get<T>(fn);
745
35.1k
              if constexpr (std::is_void_v<R>) {
746
35.1k
                  obj(static_cast<decltype(args)>(args)...);
747
35.1k
              }
748
35.1k
              else {
749
35.1k
                  return obj(static_cast<decltype(args)>(args)...);
750
35.1k
              }
751
35.1k
          }),
752
35.1k
          m_storage(std::addressof(f))
753
35.1k
    {
754
35.1k
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IRKZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlcE_SR_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESH_EUlDiE_SM_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSO_EEvE4typeELPv0EEEOSH_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IRKZNS1_9skip_fillINSt3__117basic_string_viewIcNS7_11char_traitsIcEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbEUlcE_SP_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISF_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSF_
_ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSE_EENS1_15take_width_viewINSA_ISE_SE_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_iEUlcE_SV_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
1.01k
        : m_fptr([](storage fn,
743
1.01k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.01k
              cvref<T> obj = *get<T>(fn);
745
1.01k
              if constexpr (std::is_void_v<R>) {
746
1.01k
                  obj(static_cast<decltype(args)>(args)...);
747
1.01k
              }
748
1.01k
              else {
749
1.01k
                  return obj(static_cast<decltype(args)>(args)...);
750
1.01k
              }
751
1.01k
          }),
752
1.01k
          m_storage(std::addressof(f))
753
1.01k
    {
754
1.01k
    }
_ZN3scn2v44impl12function_refIFbcES3_EC2IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlcE_SR_TnPNSF_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_
Line
Count
Source
742
494
        : m_fptr([](storage fn,
743
494
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
494
              cvref<T> obj = *get<T>(fn);
745
494
              if constexpr (std::is_void_v<R>) {
746
494
                  obj(static_cast<decltype(args)>(args)...);
747
494
              }
748
494
              else {
749
494
                  return obj(static_cast<decltype(args)>(args)...);
750
494
              }
751
494
          }),
752
494
          m_storage(std::addressof(f))
753
494
    {
754
494
    }
_ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_
Line
Count
Source
742
534
        : m_fptr([](storage fn,
743
534
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
534
              cvref<T> obj = *get<T>(fn);
745
534
              if constexpr (std::is_void_v<R>) {
746
534
                  obj(static_cast<decltype(args)>(args)...);
747
534
              }
748
534
              else {
749
534
                  return obj(static_cast<decltype(args)>(args)...);
750
534
              }
751
534
          }),
752
534
          m_storage(std::addressof(f))
753
534
    {
754
534
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_EUlcE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEST_NSR_17basic_string_viewIcNSR_11char_traitsIcEEEEEUlcE_S12_TnPNSR_9enable_ifIXaaaasr6detailE11is_not_selfIST_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS14_EEvE4typeELPv0EEEOST_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_EUlcE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEEUlcE_SU_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlcE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
_ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
Line
Count
Source
742
8
        : m_fptr([](storage fn,
743
8
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
8
              cvref<T> obj = *get<T>(fn);
745
8
              if constexpr (std::is_void_v<R>) {
746
8
                  obj(static_cast<decltype(args)>(args)...);
747
8
              }
748
8
              else {
749
8
                  return obj(static_cast<decltype(args)>(args)...);
750
8
              }
751
8
          }),
752
8
          m_storage(std::addressof(f))
753
8
    {
754
8
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESQ_NSO_17basic_string_viewIcNSO_11char_traitsIcEEEEEUlcE_SZ_TnPNSO_9enable_ifIXaaaasr6detailE11is_not_selfISQ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS11_EEvE4typeELPv0EEEOSQ_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
_ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
Line
Count
Source
742
350
        : m_fptr([](storage fn,
743
350
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
350
              cvref<T> obj = *get<T>(fn);
745
350
              if constexpr (std::is_void_v<R>) {
746
350
                  obj(static_cast<decltype(args)>(args)...);
747
350
              }
748
350
              else {
749
350
                  return obj(static_cast<decltype(args)>(args)...);
750
350
              }
751
350
          }),
752
350
          m_storage(std::addressof(f))
753
350
    {
754
350
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlcE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEEEUlcE_SR_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSI_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
_ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
22
        : m_fptr([](storage fn,
743
22
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
22
              cvref<T> obj = *get<T>(fn);
745
22
              if constexpr (std::is_void_v<R>) {
746
22
                  obj(static_cast<decltype(args)>(args)...);
747
22
              }
748
22
              else {
749
22
                  return obj(static_cast<decltype(args)>(args)...);
750
22
              }
751
22
          }),
752
22
          m_storage(std::addressof(f))
753
22
    {
754
22
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
_ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Line
Count
Source
742
12
        : m_fptr([](storage fn,
743
12
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
12
              cvref<T> obj = *get<T>(fn);
745
12
              if constexpr (std::is_void_v<R>) {
746
12
                  obj(static_cast<decltype(args)>(args)...);
747
12
              }
748
12
              else {
749
12
                  return obj(static_cast<decltype(args)>(args)...);
750
12
              }
751
12
          }),
752
12
          m_storage(std::addressof(f))
753
12
    {
754
12
    }
_ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Line
Count
Source
742
346
        : m_fptr([](storage fn,
743
346
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
346
              cvref<T> obj = *get<T>(fn);
745
346
              if constexpr (std::is_void_v<R>) {
746
346
                  obj(static_cast<decltype(args)>(args)...);
747
346
              }
748
346
              else {
749
346
                  return obj(static_cast<decltype(args)>(args)...);
750
346
              }
751
346
          }),
752
346
          m_storage(std::addressof(f))
753
346
    {
754
346
    }
_ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
6
        : m_fptr([](storage fn,
743
6
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
6
              cvref<T> obj = *get<T>(fn);
745
6
              if constexpr (std::is_void_v<R>) {
746
6
                  obj(static_cast<decltype(args)>(args)...);
747
6
              }
748
6
              else {
749
6
                  return obj(static_cast<decltype(args)>(args)...);
750
6
              }
751
6
          }),
752
6
          m_storage(std::addressof(f))
753
6
    {
754
6
    }
_ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
278
        : m_fptr([](storage fn,
743
278
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
278
              cvref<T> obj = *get<T>(fn);
745
278
              if constexpr (std::is_void_v<R>) {
746
278
                  obj(static_cast<decltype(args)>(args)...);
747
278
              }
748
278
              else {
749
278
                  return obj(static_cast<decltype(args)>(args)...);
750
278
              }
751
278
          }),
752
278
          m_storage(std::addressof(f))
753
278
    {
754
278
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlcE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlDiE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlcE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlcE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlDiE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlcE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_
_ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_
Line
Count
Source
742
948
        : m_fptr([](storage fn,
743
948
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
948
              cvref<T> obj = *get<T>(fn);
745
948
              if constexpr (std::is_void_v<R>) {
746
948
                  obj(static_cast<decltype(args)>(args)...);
747
948
              }
748
948
              else {
749
948
                  return obj(static_cast<decltype(args)>(args)...);
750
948
              }
751
948
          }),
752
948
          m_storage(std::addressof(f))
753
948
    {
754
948
    }
_ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlcE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
40
        : m_fptr([](storage fn,
743
40
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
40
              cvref<T> obj = *get<T>(fn);
745
40
              if constexpr (std::is_void_v<R>) {
746
40
                  obj(static_cast<decltype(args)>(args)...);
747
40
              }
748
40
              else {
749
40
                  return obj(static_cast<decltype(args)>(args)...);
750
40
              }
751
40
          }),
752
40
          m_storage(std::addressof(f))
753
40
    {
754
40
    }
_ZN3scn2v44impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlDiE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
474
        : m_fptr([](storage fn,
743
474
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
474
              cvref<T> obj = *get<T>(fn);
745
474
              if constexpr (std::is_void_v<R>) {
746
474
                  obj(static_cast<decltype(args)>(args)...);
747
474
              }
748
474
              else {
749
474
                  return obj(static_cast<decltype(args)>(args)...);
750
474
              }
751
474
          }),
752
474
          m_storage(std::addressof(f))
753
474
    {
754
474
    }
_ZN3scn2v44impl12function_refIFbcES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlcE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
348
        : m_fptr([](storage fn,
743
348
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
348
              cvref<T> obj = *get<T>(fn);
745
348
              if constexpr (std::is_void_v<R>) {
746
348
                  obj(static_cast<decltype(args)>(args)...);
747
348
              }
748
348
              else {
749
348
                  return obj(static_cast<decltype(args)>(args)...);
750
348
              }
751
348
          }),
752
348
          m_storage(std::addressof(f))
753
348
    {
754
348
    }
_ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlcE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
30
        : m_fptr([](storage fn,
743
30
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
30
              cvref<T> obj = *get<T>(fn);
745
30
              if constexpr (std::is_void_v<R>) {
746
30
                  obj(static_cast<decltype(args)>(args)...);
747
30
              }
748
30
              else {
749
30
                  return obj(static_cast<decltype(args)>(args)...);
750
30
              }
751
30
          }),
752
30
          m_storage(std::addressof(f))
753
30
    {
754
30
    }
_ZN3scn2v44impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlDiE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
2.38k
        : m_fptr([](storage fn,
743
2.38k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
2.38k
              cvref<T> obj = *get<T>(fn);
745
2.38k
              if constexpr (std::is_void_v<R>) {
746
2.38k
                  obj(static_cast<decltype(args)>(args)...);
747
2.38k
              }
748
2.38k
              else {
749
2.38k
                  return obj(static_cast<decltype(args)>(args)...);
750
2.38k
              }
751
2.38k
          }),
752
2.38k
          m_storage(std::addressof(f))
753
2.38k
    {
754
2.38k
    }
_ZN3scn2v44impl12function_refIFbcES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlcE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
234
        : m_fptr([](storage fn,
743
234
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
234
              cvref<T> obj = *get<T>(fn);
745
234
              if constexpr (std::is_void_v<R>) {
746
234
                  obj(static_cast<decltype(args)>(args)...);
747
234
              }
748
234
              else {
749
234
                  return obj(static_cast<decltype(args)>(args)...);
750
234
              }
751
234
          }),
752
234
          m_storage(std::addressof(f))
753
234
    {
754
234
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlcE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlcE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
_ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlcE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
40
        : m_fptr([](storage fn,
743
40
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
40
              cvref<T> obj = *get<T>(fn);
745
40
              if constexpr (std::is_void_v<R>) {
746
40
                  obj(static_cast<decltype(args)>(args)...);
747
40
              }
748
40
              else {
749
40
                  return obj(static_cast<decltype(args)>(args)...);
750
40
              }
751
40
          }),
752
40
          m_storage(std::addressof(f))
753
40
    {
754
40
    }
_ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlcE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
30
        : m_fptr([](storage fn,
743
30
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
30
              cvref<T> obj = *get<T>(fn);
745
30
              if constexpr (std::is_void_v<R>) {
746
30
                  obj(static_cast<decltype(args)>(args)...);
747
30
              }
748
30
              else {
749
30
                  return obj(static_cast<decltype(args)>(args)...);
750
30
              }
751
30
          }),
752
30
          m_storage(std::addressof(f))
753
30
    {
754
30
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlcE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlcE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
_ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlcE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
40
        : m_fptr([](storage fn,
743
40
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
40
              cvref<T> obj = *get<T>(fn);
745
40
              if constexpr (std::is_void_v<R>) {
746
40
                  obj(static_cast<decltype(args)>(args)...);
747
40
              }
748
40
              else {
749
40
                  return obj(static_cast<decltype(args)>(args)...);
750
40
              }
751
40
          }),
752
40
          m_storage(std::addressof(f))
753
40
    {
754
40
    }
_ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlcE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
30
        : m_fptr([](storage fn,
743
30
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
30
              cvref<T> obj = *get<T>(fn);
745
30
              if constexpr (std::is_void_v<R>) {
746
30
                  obj(static_cast<decltype(args)>(args)...);
747
30
              }
748
30
              else {
749
30
                  return obj(static_cast<decltype(args)>(args)...);
750
30
              }
751
30
          }),
752
30
          m_storage(std::addressof(f))
753
30
    {
754
30
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlcE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlcE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlcE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlcE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_
_ZN3scn2v44impl12function_refIFbwES3_EC2INSt3__110__not_fn_tIS4_EES8_TnPNS6_9enable_ifIXaaaasr6detailE11is_not_selfIT_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSB_EEvE4typeELPv0EEEOSA_
Line
Count
Source
742
2.54k
        : m_fptr([](storage fn,
743
2.54k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
2.54k
              cvref<T> obj = *get<T>(fn);
745
2.54k
              if constexpr (std::is_void_v<R>) {
746
2.54k
                  obj(static_cast<decltype(args)>(args)...);
747
2.54k
              }
748
2.54k
              else {
749
2.54k
                  return obj(static_cast<decltype(args)>(args)...);
750
2.54k
              }
751
2.54k
          }),
752
2.54k
          m_storage(std::addressof(f))
753
2.54k
    {
754
2.54k
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_lRKNSC_9fill_typeEbEUlwE_SV_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_EUlDiE_SR_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_lRKNSB_9fill_typeEbEUlwE_ST_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSK_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEENS1_15take_width_viewINSA_ISG_SH_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_iEUlwE_SY_TnPNSQ_9enable_ifIXaaaasr6detailE11is_not_selfISS_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS10_EEvE4typeELPv0EEEOSS_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_iEUlwE_SQ_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSK_
_ZN3scn2v44impl12function_refIFvDiES3_EC2IZNS1_20calculate_text_widthIwEEmNSt3__117basic_string_viewIT_NS7_11char_traitsIS9_EEEEEUlDiE_SD_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfIS9_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSF_EEvE4typeELPv0EEEOS9_
Line
Count
Source
742
3.28k
        : m_fptr([](storage fn,
743
3.28k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
3.28k
              cvref<T> obj = *get<T>(fn);
745
3.28k
              if constexpr (std::is_void_v<R>) {
746
3.28k
                  obj(static_cast<decltype(args)>(args)...);
747
3.28k
              }
748
3.28k
              else {
749
3.28k
                  return obj(static_cast<decltype(args)>(args)...);
750
3.28k
              }
751
3.28k
          }),
752
3.28k
          m_storage(std::addressof(f))
753
3.28k
    {
754
3.28k
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IRKZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlwE_SR_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESH_EUlDiE_SM_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSO_EEvE4typeELPv0EEEOSH_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IRKZNS1_9skip_fillINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbEUlwE_SP_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISF_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSF_
_ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESE_EUlDiE_SJ_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISE_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSL_EEvE4typeELPv0EEEOSE_
Line
Count
Source
742
4.99k
        : m_fptr([](storage fn,
743
4.99k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
4.99k
              cvref<T> obj = *get<T>(fn);
745
4.99k
              if constexpr (std::is_void_v<R>) {
746
4.99k
                  obj(static_cast<decltype(args)>(args)...);
747
4.99k
              }
748
4.99k
              else {
749
4.99k
                  return obj(static_cast<decltype(args)>(args)...);
750
4.99k
              }
751
4.99k
          }),
752
4.99k
          m_storage(std::addressof(f))
753
4.99k
    {
754
4.99k
    }
_ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSE_EENS1_15take_width_viewINSA_ISE_SE_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_iEUlwE_SV_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
546
        : m_fptr([](storage fn,
743
546
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
546
              cvref<T> obj = *get<T>(fn);
745
546
              if constexpr (std::is_void_v<R>) {
746
546
                  obj(static_cast<decltype(args)>(args)...);
747
546
              }
748
546
              else {
749
546
                  return obj(static_cast<decltype(args)>(args)...);
750
546
              }
751
546
          }),
752
546
          m_storage(std::addressof(f))
753
546
    {
754
546
    }
_ZN3scn2v44impl12function_refIFbwES3_EC2IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlwE_SR_TnPNSF_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_
Line
Count
Source
742
1.11k
        : m_fptr([](storage fn,
743
1.11k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.11k
              cvref<T> obj = *get<T>(fn);
745
1.11k
              if constexpr (std::is_void_v<R>) {
746
1.11k
                  obj(static_cast<decltype(args)>(args)...);
747
1.11k
              }
748
1.11k
              else {
749
1.11k
                  return obj(static_cast<decltype(args)>(args)...);
750
1.11k
              }
751
1.11k
          }),
752
1.11k
          m_storage(std::addressof(f))
753
1.11k
    {
754
1.11k
    }
_ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_
Line
Count
Source
742
396
        : m_fptr([](storage fn,
743
396
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
396
              cvref<T> obj = *get<T>(fn);
745
396
              if constexpr (std::is_void_v<R>) {
746
396
                  obj(static_cast<decltype(args)>(args)...);
747
396
              }
748
396
              else {
749
396
                  return obj(static_cast<decltype(args)>(args)...);
750
396
              }
751
396
          }),
752
396
          m_storage(std::addressof(f))
753
396
    {
754
396
    }
_ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNSE_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_
Line
Count
Source
742
11.6k
        : m_fptr([](storage fn,
743
11.6k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
11.6k
              cvref<T> obj = *get<T>(fn);
745
11.6k
              if constexpr (std::is_void_v<R>) {
746
11.6k
                  obj(static_cast<decltype(args)>(args)...);
747
11.6k
              }
748
11.6k
              else {
749
11.6k
                  return obj(static_cast<decltype(args)>(args)...);
750
11.6k
              }
751
11.6k
          }),
752
11.6k
          m_storage(std::addressof(f))
753
11.6k
    {
754
11.6k
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_EUlwE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEST_NSR_17basic_string_viewIcNSR_11char_traitsIcEEEEEUlwE_S12_TnPNSR_9enable_ifIXaaaasr6detailE11is_not_selfIST_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS14_EEvE4typeELPv0EEEOST_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_EUlwE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEEUlwE_SU_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlwE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
_ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
Line
Count
Source
742
22
        : m_fptr([](storage fn,
743
22
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
22
              cvref<T> obj = *get<T>(fn);
745
22
              if constexpr (std::is_void_v<R>) {
746
22
                  obj(static_cast<decltype(args)>(args)...);
747
22
              }
748
22
              else {
749
22
                  return obj(static_cast<decltype(args)>(args)...);
750
22
              }
751
22
          }),
752
22
          m_storage(std::addressof(f))
753
22
    {
754
22
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESQ_NSO_17basic_string_viewIcNSO_11char_traitsIcEEEEEUlwE_SZ_TnPNSO_9enable_ifIXaaaasr6detailE11is_not_selfISQ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS11_EEvE4typeELPv0EEEOSQ_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
_ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
Line
Count
Source
742
204
        : m_fptr([](storage fn,
743
204
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
204
              cvref<T> obj = *get<T>(fn);
745
204
              if constexpr (std::is_void_v<R>) {
746
204
                  obj(static_cast<decltype(args)>(args)...);
747
204
              }
748
204
              else {
749
204
                  return obj(static_cast<decltype(args)>(args)...);
750
204
              }
751
204
          }),
752
204
          m_storage(std::addressof(f))
753
204
    {
754
204
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlwE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEEEUlwE_SR_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSI_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
_ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
28
        : m_fptr([](storage fn,
743
28
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
28
              cvref<T> obj = *get<T>(fn);
745
28
              if constexpr (std::is_void_v<R>) {
746
28
                  obj(static_cast<decltype(args)>(args)...);
747
28
              }
748
28
              else {
749
28
                  return obj(static_cast<decltype(args)>(args)...);
750
28
              }
751
28
          }),
752
28
          m_storage(std::addressof(f))
753
28
    {
754
28
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
_ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Line
Count
Source
742
14
        : m_fptr([](storage fn,
743
14
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
14
              cvref<T> obj = *get<T>(fn);
745
14
              if constexpr (std::is_void_v<R>) {
746
14
                  obj(static_cast<decltype(args)>(args)...);
747
14
              }
748
14
              else {
749
14
                  return obj(static_cast<decltype(args)>(args)...);
750
14
              }
751
14
          }),
752
14
          m_storage(std::addressof(f))
753
14
    {
754
14
    }
_ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Line
Count
Source
742
180
        : m_fptr([](storage fn,
743
180
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
180
              cvref<T> obj = *get<T>(fn);
745
180
              if constexpr (std::is_void_v<R>) {
746
180
                  obj(static_cast<decltype(args)>(args)...);
747
180
              }
748
180
              else {
749
180
                  return obj(static_cast<decltype(args)>(args)...);
750
180
              }
751
180
          }),
752
180
          m_storage(std::addressof(f))
753
180
    {
754
180
    }
_ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
14
        : m_fptr([](storage fn,
743
14
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
14
              cvref<T> obj = *get<T>(fn);
745
14
              if constexpr (std::is_void_v<R>) {
746
14
                  obj(static_cast<decltype(args)>(args)...);
747
14
              }
748
14
              else {
749
14
                  return obj(static_cast<decltype(args)>(args)...);
750
14
              }
751
14
          }),
752
14
          m_storage(std::addressof(f))
753
14
    {
754
14
    }
_ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
430
        : m_fptr([](storage fn,
743
430
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
430
              cvref<T> obj = *get<T>(fn);
745
430
              if constexpr (std::is_void_v<R>) {
746
430
                  obj(static_cast<decltype(args)>(args)...);
747
430
              }
748
430
              else {
749
430
                  return obj(static_cast<decltype(args)>(args)...);
750
430
              }
751
430
          }),
752
430
          m_storage(std::addressof(f))
753
430
    {
754
430
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlwE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlDiE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlwE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlwE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlDiE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlwE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_
_ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_
Line
Count
Source
742
474
        : m_fptr([](storage fn,
743
474
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
474
              cvref<T> obj = *get<T>(fn);
745
474
              if constexpr (std::is_void_v<R>) {
746
474
                  obj(static_cast<decltype(args)>(args)...);
747
474
              }
748
474
              else {
749
474
                  return obj(static_cast<decltype(args)>(args)...);
750
474
              }
751
474
          }),
752
474
          m_storage(std::addressof(f))
753
474
    {
754
474
    }
_ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlwE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
14
        : m_fptr([](storage fn,
743
14
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
14
              cvref<T> obj = *get<T>(fn);
745
14
              if constexpr (std::is_void_v<R>) {
746
14
                  obj(static_cast<decltype(args)>(args)...);
747
14
              }
748
14
              else {
749
14
                  return obj(static_cast<decltype(args)>(args)...);
750
14
              }
751
14
          }),
752
14
          m_storage(std::addressof(f))
753
14
    {
754
14
    }
_ZN3scn2v44impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlDiE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
270
        : m_fptr([](storage fn,
743
270
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
270
              cvref<T> obj = *get<T>(fn);
745
270
              if constexpr (std::is_void_v<R>) {
746
270
                  obj(static_cast<decltype(args)>(args)...);
747
270
              }
748
270
              else {
749
270
                  return obj(static_cast<decltype(args)>(args)...);
750
270
              }
751
270
          }),
752
270
          m_storage(std::addressof(f))
753
270
    {
754
270
    }
_ZN3scn2v44impl12function_refIFbwES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlwE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
162
        : m_fptr([](storage fn,
743
162
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
162
              cvref<T> obj = *get<T>(fn);
745
162
              if constexpr (std::is_void_v<R>) {
746
162
                  obj(static_cast<decltype(args)>(args)...);
747
162
              }
748
162
              else {
749
162
                  return obj(static_cast<decltype(args)>(args)...);
750
162
              }
751
162
          }),
752
162
          m_storage(std::addressof(f))
753
162
    {
754
162
    }
_ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNSE_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_
Line
Count
Source
742
2.49k
        : m_fptr([](storage fn,
743
2.49k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
2.49k
              cvref<T> obj = *get<T>(fn);
745
2.49k
              if constexpr (std::is_void_v<R>) {
746
2.49k
                  obj(static_cast<decltype(args)>(args)...);
747
2.49k
              }
748
2.49k
              else {
749
2.49k
                  return obj(static_cast<decltype(args)>(args)...);
750
2.49k
              }
751
2.49k
          }),
752
2.49k
          m_storage(std::addressof(f))
753
2.49k
    {
754
2.49k
    }
_ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlwE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
38
        : m_fptr([](storage fn,
743
38
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
38
              cvref<T> obj = *get<T>(fn);
745
38
              if constexpr (std::is_void_v<R>) {
746
38
                  obj(static_cast<decltype(args)>(args)...);
747
38
              }
748
38
              else {
749
38
                  return obj(static_cast<decltype(args)>(args)...);
750
38
              }
751
38
          }),
752
38
          m_storage(std::addressof(f))
753
38
    {
754
38
    }
_ZN3scn2v44impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlDiE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
390
        : m_fptr([](storage fn,
743
390
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
390
              cvref<T> obj = *get<T>(fn);
745
390
              if constexpr (std::is_void_v<R>) {
746
390
                  obj(static_cast<decltype(args)>(args)...);
747
390
              }
748
390
              else {
749
390
                  return obj(static_cast<decltype(args)>(args)...);
750
390
              }
751
390
          }),
752
390
          m_storage(std::addressof(f))
753
390
    {
754
390
    }
_ZN3scn2v44impl12function_refIFbwES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlwE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
150
        : m_fptr([](storage fn,
743
150
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
150
              cvref<T> obj = *get<T>(fn);
745
150
              if constexpr (std::is_void_v<R>) {
746
150
                  obj(static_cast<decltype(args)>(args)...);
747
150
              }
748
150
              else {
749
150
                  return obj(static_cast<decltype(args)>(args)...);
750
150
              }
751
150
          }),
752
150
          m_storage(std::addressof(f))
753
150
    {
754
150
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlwE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlwE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
_ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlwE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
14
        : m_fptr([](storage fn,
743
14
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
14
              cvref<T> obj = *get<T>(fn);
745
14
              if constexpr (std::is_void_v<R>) {
746
14
                  obj(static_cast<decltype(args)>(args)...);
747
14
              }
748
14
              else {
749
14
                  return obj(static_cast<decltype(args)>(args)...);
750
14
              }
751
14
          }),
752
14
          m_storage(std::addressof(f))
753
14
    {
754
14
    }
_ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlwE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
38
        : m_fptr([](storage fn,
743
38
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
38
              cvref<T> obj = *get<T>(fn);
745
38
              if constexpr (std::is_void_v<R>) {
746
38
                  obj(static_cast<decltype(args)>(args)...);
747
38
              }
748
38
              else {
749
38
                  return obj(static_cast<decltype(args)>(args)...);
750
38
              }
751
38
          }),
752
38
          m_storage(std::addressof(f))
753
38
    {
754
38
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlwE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlwE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlwE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlwE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlwE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlwE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
_ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlwE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
14
        : m_fptr([](storage fn,
743
14
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
14
              cvref<T> obj = *get<T>(fn);
745
14
              if constexpr (std::is_void_v<R>) {
746
14
                  obj(static_cast<decltype(args)>(args)...);
747
14
              }
748
14
              else {
749
14
                  return obj(static_cast<decltype(args)>(args)...);
750
14
              }
751
14
          }),
752
14
          m_storage(std::addressof(f))
753
14
    {
754
14
    }
_ZN3scn2v44impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlwE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
38
        : m_fptr([](storage fn,
743
38
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
38
              cvref<T> obj = *get<T>(fn);
745
38
              if constexpr (std::is_void_v<R>) {
746
38
                  obj(static_cast<decltype(args)>(args)...);
747
38
              }
748
38
              else {
749
38
                  return obj(static_cast<decltype(args)>(args)...);
750
38
              }
751
38
          }),
752
38
          m_storage(std::addressof(f))
753
38
    {
754
38
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_
_ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESE_EUlDiE_SJ_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISE_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSL_EEvE4typeELPv0EEEOSE_
Line
Count
Source
742
52
        : m_fptr([](storage fn,
743
52
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
52
              cvref<T> obj = *get<T>(fn);
745
52
              if constexpr (std::is_void_v<R>) {
746
52
                  obj(static_cast<decltype(args)>(args)...);
747
52
              }
748
52
              else {
749
52
                  return obj(static_cast<decltype(args)>(args)...);
750
52
              }
751
52
          }),
752
52
          m_storage(std::addressof(f))
753
52
    {
754
52
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE12read_defaultISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_
_ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE12read_defaultISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
624
        : m_fptr([](storage fn,
743
624
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
624
              cvref<T> obj = *get<T>(fn);
745
624
              if constexpr (std::is_void_v<R>) {
746
624
                  obj(static_cast<decltype(args)>(args)...);
747
624
              }
748
624
              else {
749
624
                  return obj(static_cast<decltype(args)>(args)...);
750
624
              }
751
624
          }),
752
624
          m_storage(std::addressof(f))
753
624
    {
754
624
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE12read_defaultISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE12read_defaultISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE12read_defaultISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE12read_defaultISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_
_ZN3scn2v44impl12function_refIFbcES3_EC2IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNS0_6detail9fill_typeEbEUlcE_ST_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
472
        : m_fptr([](storage fn,
743
472
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
472
              cvref<T> obj = *get<T>(fn);
745
472
              if constexpr (std::is_void_v<R>) {
746
472
                  obj(static_cast<decltype(args)>(args)...);
747
472
              }
748
472
              else {
749
472
                  return obj(static_cast<decltype(args)>(args)...);
750
472
              }
751
472
          }),
752
472
          m_storage(std::addressof(f))
753
472
    {
754
472
    }
_ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
2.28k
        : m_fptr([](storage fn,
743
2.28k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
2.28k
              cvref<T> obj = *get<T>(fn);
745
2.28k
              if constexpr (std::is_void_v<R>) {
746
2.28k
                  obj(static_cast<decltype(args)>(args)...);
747
2.28k
              }
748
2.28k
              else {
749
2.28k
                  return obj(static_cast<decltype(args)>(args)...);
750
2.28k
              }
751
2.28k
          }),
752
2.28k
          m_storage(std::addressof(f))
753
2.28k
    {
754
2.28k
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE12read_defaultISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_
_ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE12read_defaultISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
476
        : m_fptr([](storage fn,
743
476
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
476
              cvref<T> obj = *get<T>(fn);
745
476
              if constexpr (std::is_void_v<R>) {
746
476
                  obj(static_cast<decltype(args)>(args)...);
747
476
              }
748
476
              else {
749
476
                  return obj(static_cast<decltype(args)>(args)...);
750
476
              }
751
476
          }),
752
476
          m_storage(std::addressof(f))
753
476
    {
754
476
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE12read_defaultISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_
_ZN3scn2v44impl12function_refIFbwES3_EC2IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNS0_6detail9fill_typeEbEUlwE_ST_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
460
        : m_fptr([](storage fn,
743
460
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
460
              cvref<T> obj = *get<T>(fn);
745
460
              if constexpr (std::is_void_v<R>) {
746
460
                  obj(static_cast<decltype(args)>(args)...);
747
460
              }
748
460
              else {
749
460
                  return obj(static_cast<decltype(args)>(args)...);
750
460
              }
751
460
          }),
752
460
          m_storage(std::addressof(f))
753
460
    {
754
460
    }
_ZN3scn2v44impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
1.17k
        : m_fptr([](storage fn,
743
1.17k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.17k
              cvref<T> obj = *get<T>(fn);
745
1.17k
              if constexpr (std::is_void_v<R>) {
746
1.17k
                  obj(static_cast<decltype(args)>(args)...);
747
1.17k
              }
748
1.17k
              else {
749
1.17k
                  return obj(static_cast<decltype(args)>(args)...);
750
1.17k
              }
751
1.17k
          }),
752
1.17k
          m_storage(std::addressof(f))
753
1.17k
    {
754
1.17k
    }
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE12read_defaultISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE12read_defaultISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v44impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE12read_defaultISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_
755
756
    template <typename T,
757
              std::enable_if_t<detail::is_not_self<T, function_ref> &&
758
                               !std::is_pointer_v<T>>* = nullptr>
759
    function_ref& operator=(T) = delete;
760
761
    constexpr R operator()(Args... args) const noexcept(noex)
762
856k
    {
763
856k
        return m_fptr(m_storage, SCN_FWD(args)...);
764
856k
    }
scn::v4::impl::function_ref<bool (char), bool (char)>::operator()(char) const
Line
Count
Source
762
24.3k
    {
763
24.3k
        return m_fptr(m_storage, SCN_FWD(args)...);
764
24.3k
    }
scn::v4::impl::function_ref<bool (char32_t), bool (char32_t)>::operator()(char32_t) const
Line
Count
Source
762
760k
    {
763
760k
        return m_fptr(m_storage, SCN_FWD(args)...);
764
760k
    }
scn::v4::impl::function_ref<void (char32_t), void (char32_t)>::operator()(char32_t) const
Line
Count
Source
762
55.0k
    {
763
55.0k
        return m_fptr(m_storage, SCN_FWD(args)...);
764
55.0k
    }
Unexecuted instantiation: scn::v4::impl::function_ref<scn::v4::scan_expected<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > (scn::v4::impl::float_reader<char>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, scn::v4::detail::locale_ref), scn::v4::scan_expected<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > (scn::v4::impl::float_reader<char>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, scn::v4::detail::locale_ref)>::operator()(scn::v4::impl::float_reader<char>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, scn::v4::detail::locale_ref) const
Unexecuted instantiation: scn::v4::impl::function_ref<scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> (scn::v4::impl::float_reader<char>&, scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::detail::locale_ref), scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> (scn::v4::impl::float_reader<char>&, scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::detail::locale_ref)>::operator()(scn::v4::impl::float_reader<char>&, scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::detail::locale_ref) const
scn::v4::impl::function_ref<scn::v4::scan_expected<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> > (scn::v4::impl::float_reader<char>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >, scn::v4::detail::locale_ref), scn::v4::scan_expected<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> > (scn::v4::impl::float_reader<char>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >, scn::v4::detail::locale_ref)>::operator()(scn::v4::impl::float_reader<char>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >, scn::v4::detail::locale_ref) const
Line
Count
Source
762
358
    {
763
358
        return m_fptr(m_storage, SCN_FWD(args)...);
764
358
    }
scn::v4::impl::function_ref<scn::v4::scan_expected<char const*> (scn::v4::impl::float_reader<char>&, scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, scn::v4::detail::locale_ref), scn::v4::scan_expected<char const*> (scn::v4::impl::float_reader<char>&, scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, scn::v4::detail::locale_ref)>::operator()(scn::v4::impl::float_reader<char>&, scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, scn::v4::detail::locale_ref) const
Line
Count
Source
762
908
    {
763
908
        return m_fptr(m_storage, SCN_FWD(args)...);
764
908
    }
scn::v4::impl::function_ref<bool (wchar_t), bool (wchar_t)>::operator()(wchar_t) const
Line
Count
Source
762
14.6k
    {
763
14.6k
        return m_fptr(m_storage, SCN_FWD(args)...);
764
14.6k
    }
Unexecuted instantiation: scn::v4::impl::function_ref<scn::v4::scan_expected<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > (scn::v4::impl::float_reader<wchar_t>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, scn::v4::detail::locale_ref), scn::v4::scan_expected<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > (scn::v4::impl::float_reader<wchar_t>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, scn::v4::detail::locale_ref)>::operator()(scn::v4::impl::float_reader<wchar_t>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, scn::v4::detail::locale_ref) const
Unexecuted instantiation: scn::v4::impl::function_ref<scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> (scn::v4::impl::float_reader<wchar_t>&, scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::detail::locale_ref), scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> (scn::v4::impl::float_reader<wchar_t>&, scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::detail::locale_ref)>::operator()(scn::v4::impl::float_reader<wchar_t>&, scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::detail::locale_ref) const
scn::v4::impl::function_ref<scn::v4::scan_expected<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> > (scn::v4::impl::float_reader<wchar_t>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >, scn::v4::detail::locale_ref), scn::v4::scan_expected<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> > (scn::v4::impl::float_reader<wchar_t>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >, scn::v4::detail::locale_ref)>::operator()(scn::v4::impl::float_reader<wchar_t>&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >, scn::v4::detail::locale_ref) const
Line
Count
Source
762
194
    {
763
194
        return m_fptr(m_storage, SCN_FWD(args)...);
764
194
    }
scn::v4::impl::function_ref<scn::v4::scan_expected<wchar_t const*> (scn::v4::impl::float_reader<wchar_t>&, scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, scn::v4::detail::locale_ref), scn::v4::scan_expected<wchar_t const*> (scn::v4::impl::float_reader<wchar_t>&, scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, scn::v4::detail::locale_ref)>::operator()(scn::v4::impl::float_reader<wchar_t>&, scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, scn::v4::detail::locale_ref) const
Line
Count
Source
762
920
    {
763
920
        return m_fptr(m_storage, SCN_FWD(args)...);
764
920
    }
765
766
private:
767
    fwd_t* m_fptr{nullptr};
768
    storage m_storage;
769
};
770
771
template <typename F, std::enable_if_t<std::is_function_v<F>>* = nullptr>
772
function_ref(F*) -> function_ref<F>;
773
}  // namespace impl
774
775
/////////////////////////////////////////////////////////////////
776
// Internal error types
777
/////////////////////////////////////////////////////////////////
778
779
namespace impl {
780
enum class eof_error { good, eof };
781
782
inline constexpr bool operator!(eof_error e)
783
48.0k
{
784
48.0k
    return e != eof_error::good;
785
48.0k
}
786
787
template <typename T>
788
struct eof_expected : public expected<T, eof_error> {
789
    using base = expected<T, eof_error>;
790
    using base::base;
791
792
    constexpr eof_expected(const base& other) : base(other) {}
793
    constexpr eof_expected(base&& other) : base(SCN_MOVE(other)) {}
794
};
795
796
inline constexpr auto make_eof_scan_error(eof_error err)
797
306
{
798
306
    SCN_EXPECT(err == eof_error::eof);
799
306
    return scan_error{scan_error::end_of_input, "EOF"};
800
306
}
801
802
struct SCN_TRIVIAL_ABI parse_error {
803
    enum code { good, eof, error };
804
    using code_t = code;
805
806
    constexpr parse_error() = default;
807
53.8k
    constexpr parse_error(code c) : m_code(c)
808
53.8k
    {
809
53.8k
        SCN_UNLIKELY_ATTR SCN_UNUSED(m_code);
810
53.8k
    }
811
812
    constexpr explicit operator bool() const
813
0
    {
814
0
        return m_code == good;
815
0
    }
816
    constexpr explicit operator code_t() const
817
0
    {
818
0
        return m_code;
819
0
    }
820
821
    friend constexpr bool operator==(parse_error a, parse_error b)
822
22.6k
    {
823
22.6k
        return a.m_code == b.m_code;
824
22.6k
    }
825
    friend constexpr bool operator!=(parse_error a, parse_error b)
826
4.44k
    {
827
4.44k
        return !(a == b);
828
4.44k
    }
829
830
private:
831
    code m_code{good};
832
};
833
834
template <typename T>
835
struct parse_expected : public expected<T, parse_error> {
836
    using base = expected<T, parse_error>;
837
    using base::base;
838
839
    constexpr parse_expected(const base& other) : base(other) {}
840
    constexpr parse_expected(base&& other) : base(SCN_MOVE(other)) {}
841
};
842
843
inline constexpr parse_error make_eof_parse_error(eof_error err)
844
1.03k
{
845
1.03k
    SCN_EXPECT(err == eof_error::eof);
846
1.03k
    return parse_error::eof;
847
1.03k
}
848
849
inline constexpr scan_expected<void> make_scan_error_from_parse_error(
850
    parse_error err,
851
    enum scan_error::code code,
852
    const char* msg)
853
4.44k
{
854
4.44k
    if (err == parse_error::good) {
855
0
        return {};
856
0
    }
857
858
4.44k
    if (err == parse_error::eof) {
859
140
        return detail::unexpected_scan_error(scan_error::end_of_input, "EOF");
860
140
    }
861
862
4.30k
    return detail::unexpected_scan_error(code, msg);
863
4.44k
}
864
865
inline constexpr auto map_parse_error_to_scan_error(enum scan_error::code code,
866
                                                    const char* msg)
867
4.50k
{
868
4.50k
    return [code, msg](parse_error err) {
869
4.44k
        assert(err != parse_error::good);
870
4.44k
        return make_scan_error_from_parse_error(err, code, msg).error();
871
4.44k
    };
872
4.50k
}
873
}  // namespace impl
874
875
namespace detail {
876
template <typename T>
877
struct is_expected_impl<scn::impl::parse_expected<T>> : std::true_type {};
878
}  // namespace detail
879
880
/////////////////////////////////////////////////////////////////
881
// Range reading support
882
/////////////////////////////////////////////////////////////////
883
884
namespace impl {
885
#if SCN_MSVC_DEBUG_ITERATORS
886
#define SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND 1
887
#else
888
#define SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND 0
889
#endif
890
891
template <typename T>
892
constexpr bool range_supports_nocopy() noexcept
893
{
894
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
895
    return ranges::contiguous_range<T> ||
896
           (ranges::random_access_range<T> &&
897
            detail::can_make_address_from_iterator<ranges::iterator_t<T>>);
898
#else
899
    return ranges::contiguous_range<T>;
900
#endif
901
}
902
903
template <typename R>
904
constexpr auto range_nocopy_data(const R& r) noexcept
905
{
906
    static_assert(range_supports_nocopy<R>());
907
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
908
    return detail::to_address(ranges::begin(r));
909
#else
910
    return ranges::data(r);
911
#endif
912
}
913
914
template <typename R>
915
constexpr auto range_nocopy_size(const R& r) noexcept
916
{
917
    static_assert(range_supports_nocopy<R>());
918
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
919
    return static_cast<size_t>(ranges::distance(detail::to_address(r.begin()),
920
                                                detail::to_address(r.end())));
921
#else
922
    return r.size();
923
#endif
924
}
925
926
template <typename I, typename S>
927
SCN_NODISCARD constexpr bool is_range_eof(I begin, S end)
928
204M
{
929
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
930
    if constexpr (ranges::contiguous_iterator<I> ||
931
                  (ranges::random_access_iterator<I> &&
932
                   detail::can_make_address_from_iterator<I>)) {
933
        return detail::to_address(begin) == detail::to_address(end);
934
    }
935
    else
936
#endif
937
204M
    {
938
204M
        return begin == end;
939
204M
    }
940
204M
}
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true>)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>(scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true>)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>)
bool scn::v4::impl::is_range_eof<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>)
Line
Count
Source
928
30.6k
{
929
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
930
    if constexpr (ranges::contiguous_iterator<I> ||
931
                  (ranges::random_access_iterator<I> &&
932
                   detail::can_make_address_from_iterator<I>)) {
933
        return detail::to_address(begin) == detail::to_address(end);
934
    }
935
    else
936
#endif
937
30.6k
    {
938
30.6k
        return begin == end;
939
30.6k
    }
940
30.6k
}
bool scn::v4::impl::is_range_eof<char const*, char const*>(char const*, char const*)
Line
Count
Source
928
383k
{
929
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
930
    if constexpr (ranges::contiguous_iterator<I> ||
931
                  (ranges::random_access_iterator<I> &&
932
                   detail::can_make_address_from_iterator<I>)) {
933
        return detail::to_address(begin) == detail::to_address(end);
934
    }
935
    else
936
#endif
937
383k
    {
938
383k
        return begin == end;
939
383k
    }
940
383k
}
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true>)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>(scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true>)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>)
bool scn::v4::impl::is_range_eof<wchar_t const*, wchar_t const*>(wchar_t const*, wchar_t const*)
Line
Count
Source
928
203M
{
929
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
930
    if constexpr (ranges::contiguous_iterator<I> ||
931
                  (ranges::random_access_iterator<I> &&
932
                   detail::can_make_address_from_iterator<I>)) {
933
        return detail::to_address(begin) == detail::to_address(end);
934
    }
935
    else
936
#endif
937
203M
    {
938
203M
        return begin == end;
939
203M
    }
940
203M
}
bool scn::v4::impl::is_range_eof<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>)
Line
Count
Source
928
14.1k
{
929
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
930
    if constexpr (ranges::contiguous_iterator<I> ||
931
                  (ranges::random_access_iterator<I> &&
932
                   detail::can_make_address_from_iterator<I>)) {
933
        return detail::to_address(begin) == detail::to_address(end);
934
    }
935
    else
936
#endif
937
14.1k
    {
938
14.1k
        return begin == end;
939
14.1k
    }
940
14.1k
}
bool scn::v4::impl::is_range_eof<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true>)
Line
Count
Source
928
5.67k
{
929
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
930
    if constexpr (ranges::contiguous_iterator<I> ||
931
                  (ranges::random_access_iterator<I> &&
932
                   detail::can_make_address_from_iterator<I>)) {
933
        return detail::to_address(begin) == detail::to_address(end);
934
    }
935
    else
936
#endif
937
5.67k
    {
938
5.67k
        return begin == end;
939
5.67k
    }
940
5.67k
}
bool scn::v4::impl::is_range_eof<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true>)
Line
Count
Source
928
2.47k
{
929
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
930
    if constexpr (ranges::contiguous_iterator<I> ||
931
                  (ranges::random_access_iterator<I> &&
932
                   detail::can_make_address_from_iterator<I>)) {
933
        return detail::to_address(begin) == detail::to_address(end);
934
    }
935
    else
936
#endif
937
2.47k
    {
938
2.47k
        return begin == end;
939
2.47k
    }
940
2.47k
}
941
942
template <typename Range>
943
SCN_NODISCARD constexpr bool is_range_eof(Range r)
944
459k
{
945
459k
    return is_range_eof(r.begin(), r.end());
946
459k
}
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> >)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> >)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >)
bool scn::v4::impl::is_range_eof<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >)
Line
Count
Source
944
2.43k
{
945
2.43k
    return is_range_eof(r.begin(), r.end());
946
2.43k
}
bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >)
Line
Count
Source
944
28.2k
{
945
28.2k
    return is_range_eof(r.begin(), r.end());
946
28.2k
}
bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>)
Line
Count
Source
944
338k
{
945
338k
    return is_range_eof(r.begin(), r.end());
946
338k
}
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> >)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> >)
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >)
bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>)
Line
Count
Source
944
68.3k
{
945
68.3k
    return is_range_eof(r.begin(), r.end());
946
68.3k
}
bool scn::v4::impl::is_range_eof<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >)
Line
Count
Source
944
1.34k
{
945
1.34k
    return is_range_eof(r.begin(), r.end());
946
1.34k
}
bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >)
Line
Count
Source
944
12.8k
{
945
12.8k
    return is_range_eof(r.begin(), r.end());
946
12.8k
}
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >)
bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> >)
Line
Count
Source
944
5.67k
{
945
5.67k
    return is_range_eof(r.begin(), r.end());
946
5.67k
}
bool scn::v4::impl::is_range_eof<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> >)
Line
Count
Source
944
2.47k
{
945
2.47k
    return is_range_eof(r.begin(), r.end());
946
2.47k
}
Unexecuted instantiation: bool scn::v4::impl::is_range_eof<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)
947
948
template <typename Range>
949
SCN_NODISCARD constexpr eof_error eof_check(Range range)
950
48.0k
{
951
48.0k
    if (SCN_UNLIKELY(is_range_eof(range))) {
952
336
        return eof_error::eof;
953
336
    }
954
47.6k
    return eof_error::good;
955
48.0k
}
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> >)
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >)
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> >)
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >)
scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >)
Line
Count
Source
950
2.43k
{
951
2.43k
    if (SCN_UNLIKELY(is_range_eof(range))) {
952
0
        return eof_error::eof;
953
0
    }
954
2.43k
    return eof_error::good;
955
2.43k
}
scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >)
Line
Count
Source
950
40
{
951
40
    if (SCN_UNLIKELY(is_range_eof(range))) {
952
0
        return eof_error::eof;
953
0
    }
954
40
    return eof_error::good;
955
40
}
scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>)
Line
Count
Source
950
21.3k
{
951
21.3k
    if (SCN_UNLIKELY(is_range_eof(range))) {
952
0
        return eof_error::eof;
953
0
    }
954
21.3k
    return eof_error::good;
955
21.3k
}
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> >)
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >)
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> >)
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >)
scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>)
Line
Count
Source
950
19.2k
{
951
19.2k
    if (SCN_UNLIKELY(is_range_eof(range))) {
952
0
        return eof_error::eof;
953
0
    }
954
19.2k
    return eof_error::good;
955
19.2k
}
scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >)
Line
Count
Source
950
1.34k
{
951
1.34k
    if (SCN_UNLIKELY(is_range_eof(range))) {
952
0
        return eof_error::eof;
953
0
    }
954
1.34k
    return eof_error::good;
955
1.34k
}
scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >)
Line
Count
Source
950
124
{
951
124
    if (SCN_UNLIKELY(is_range_eof(range))) {
952
30
        return eof_error::eof;
953
30
    }
954
94
    return eof_error::good;
955
124
}
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >)
scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> >)
Line
Count
Source
950
2.28k
{
951
2.28k
    if (SCN_UNLIKELY(is_range_eof(range))) {
952
238
        return eof_error::eof;
953
238
    }
954
2.04k
    return eof_error::good;
955
2.28k
}
scn::v4::impl::eof_error scn::v4::impl::eof_check<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> >)
Line
Count
Source
950
1.17k
{
951
1.17k
    if (SCN_UNLIKELY(is_range_eof(range))) {
952
68
        return eof_error::eof;
953
68
    }
954
1.10k
    return eof_error::good;
955
1.17k
}
Unexecuted instantiation: scn::v4::impl::eof_error scn::v4::impl::eof_check<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)
956
957
template <typename Range>
958
bool is_entire_source_contiguous(Range r)
959
606
{
960
    if constexpr (ranges::contiguous_range<Range> &&
961
396
                  ranges::sized_range<Range>) {
962
396
        return true;
963
    }
964
    else if constexpr (std::is_same_v<
965
                           ranges::const_iterator_t<Range>,
966
                           typename detail::basic_scan_buffer<
967
0
                               detail::char_t<Range>>::forward_iterator>) {
968
0
        auto beg = r.begin();
969
0
        if (!beg.stores_parent()) {
970
0
            return true;
971
0
        }
972
0
        return beg.parent()->is_contiguous();
973
    }
974
210
    else {
975
210
        return false;
976
210
    }
977
606
}
Unexecuted instantiation: bool scn::v4::impl::is_entire_source_contiguous<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)
Unexecuted instantiation: bool scn::v4::impl::is_entire_source_contiguous<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
bool scn::v4::impl::is_entire_source_contiguous<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >)
Line
Count
Source
959
210
{
960
    if constexpr (ranges::contiguous_range<Range> &&
961
                  ranges::sized_range<Range>) {
962
        return true;
963
    }
964
    else if constexpr (std::is_same_v<
965
                           ranges::const_iterator_t<Range>,
966
                           typename detail::basic_scan_buffer<
967
                               detail::char_t<Range>>::forward_iterator>) {
968
        auto beg = r.begin();
969
        if (!beg.stores_parent()) {
970
            return true;
971
        }
972
        return beg.parent()->is_contiguous();
973
    }
974
210
    else {
975
210
        return false;
976
210
    }
977
210
}
bool scn::v4::impl::is_entire_source_contiguous<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>)
Line
Count
Source
959
396
{
960
    if constexpr (ranges::contiguous_range<Range> &&
961
396
                  ranges::sized_range<Range>) {
962
396
        return true;
963
    }
964
    else if constexpr (std::is_same_v<
965
                           ranges::const_iterator_t<Range>,
966
                           typename detail::basic_scan_buffer<
967
                               detail::char_t<Range>>::forward_iterator>) {
968
        auto beg = r.begin();
969
        if (!beg.stores_parent()) {
970
            return true;
971
        }
972
        return beg.parent()->is_contiguous();
973
    }
974
    else {
975
        return false;
976
    }
977
396
}
978
979
template <typename Range>
980
bool is_segment_contiguous(Range r)
981
396
{
982
    if constexpr (ranges::contiguous_range<Range> &&
983
396
                  ranges::sized_range<Range>) {
984
396
        return true;
985
    }
986
    else if constexpr (std::is_same_v<
987
                           ranges::const_iterator_t<Range>,
988
                           typename detail::basic_scan_buffer<
989
0
                               detail::char_t<Range>>::forward_iterator>) {
990
0
        auto beg = r.begin();
991
0
        if (beg.contiguous_segment().empty()) {
992
0
            return false;
993
0
        }
994
        if constexpr (ranges::common_range<Range>) {
995
            return beg.contiguous_segment().end() ==
996
                   ranges::end(r).contiguous_segment().end();
997
        }
998
0
        else {
999
0
            if (beg.stores_parent()) {
1000
0
                return beg.contiguous_segment().end() ==
1001
0
                       beg.parent()->current_view().end();
1002
0
            }
1003
0
            return true;
1004
0
        }
1005
    }
1006
0
    else {
1007
0
        return false;
1008
0
    }
1009
396
}
Unexecuted instantiation: bool scn::v4::impl::is_segment_contiguous<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
Unexecuted instantiation: bool scn::v4::impl::is_segment_contiguous<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)
Unexecuted instantiation: bool scn::v4::impl::is_segment_contiguous<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >)
bool scn::v4::impl::is_segment_contiguous<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>)
Line
Count
Source
981
396
{
982
    if constexpr (ranges::contiguous_range<Range> &&
983
396
                  ranges::sized_range<Range>) {
984
396
        return true;
985
    }
986
    else if constexpr (std::is_same_v<
987
                           ranges::const_iterator_t<Range>,
988
                           typename detail::basic_scan_buffer<
989
                               detail::char_t<Range>>::forward_iterator>) {
990
        auto beg = r.begin();
991
        if (beg.contiguous_segment().empty()) {
992
            return false;
993
        }
994
        if constexpr (ranges::common_range<Range>) {
995
            return beg.contiguous_segment().end() ==
996
                   ranges::end(r).contiguous_segment().end();
997
        }
998
        else {
999
            if (beg.stores_parent()) {
1000
                return beg.contiguous_segment().end() ==
1001
                       beg.parent()->current_view().end();
1002
            }
1003
            return true;
1004
        }
1005
    }
1006
    else {
1007
        return false;
1008
    }
1009
396
}
Unexecuted instantiation: bool scn::v4::impl::is_segment_contiguous<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
1010
1011
template <typename Range>
1012
std::size_t contiguous_beginning_size(Range r)
1013
{
1014
    if constexpr (ranges::contiguous_range<Range> &&
1015
                  ranges::sized_range<Range>) {
1016
        return r.size();
1017
    }
1018
    else if constexpr (std::is_same_v<
1019
                           ranges::const_iterator_t<Range>,
1020
                           typename detail::basic_scan_buffer<
1021
                               detail::char_t<Range>>::forward_iterator>) {
1022
        if constexpr (ranges::common_range<Range>) {
1023
            auto seg = r.begin().contiguous_segment();
1024
            auto dist =
1025
                static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1026
            return std::min(seg.size(), dist);
1027
        }
1028
        else {
1029
            return r.begin().contiguous_segment().size();
1030
        }
1031
    }
1032
    else {
1033
        return false;
1034
    }
1035
}
1036
1037
template <typename Range>
1038
auto get_contiguous_beginning(Range r)
1039
3.76k
{
1040
    if constexpr (ranges::contiguous_range<Range> &&
1041
                  ranges::sized_range<Range>) {
1042
        return r;
1043
    }
1044
    else if constexpr (std::is_same_v<
1045
                           ranges::const_iterator_t<Range>,
1046
                           typename detail::basic_scan_buffer<
1047
0
                               detail::char_t<Range>>::forward_iterator>) {
1048
        if constexpr (ranges::common_range<Range>) {
1049
            auto seg = r.begin().contiguous_segment();
1050
            auto dist =
1051
                static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1052
            return seg.substr(0, std::min(seg.size(), dist));
1053
        }
1054
0
        else {
1055
0
            return r.begin().contiguous_segment();
1056
0
        }
1057
    }
1058
3.76k
    else {
1059
3.76k
        return std::basic_string_view<detail::char_t<Range>>{};
1060
3.76k
    }
1061
3.76k
}
Unexecuted instantiation: auto scn::v4::impl::get_contiguous_beginning<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > > >(scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >)
Unexecuted instantiation: auto scn::v4::impl::get_contiguous_beginning<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)
Unexecuted instantiation: auto scn::v4::impl::get_contiguous_beginning<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > > >(scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >)
Unexecuted instantiation: auto scn::v4::impl::get_contiguous_beginning<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >)
auto scn::v4::impl::get_contiguous_beginning<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >)
Line
Count
Source
1039
1.48k
{
1040
    if constexpr (ranges::contiguous_range<Range> &&
1041
                  ranges::sized_range<Range>) {
1042
        return r;
1043
    }
1044
    else if constexpr (std::is_same_v<
1045
                           ranges::const_iterator_t<Range>,
1046
                           typename detail::basic_scan_buffer<
1047
                               detail::char_t<Range>>::forward_iterator>) {
1048
        if constexpr (ranges::common_range<Range>) {
1049
            auto seg = r.begin().contiguous_segment();
1050
            auto dist =
1051
                static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1052
            return seg.substr(0, std::min(seg.size(), dist));
1053
        }
1054
        else {
1055
            return r.begin().contiguous_segment();
1056
        }
1057
    }
1058
1.48k
    else {
1059
1.48k
        return std::basic_string_view<detail::char_t<Range>>{};
1060
1.48k
    }
1061
1.48k
}
Unexecuted instantiation: auto scn::v4::impl::get_contiguous_beginning<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
auto scn::v4::impl::get_contiguous_beginning<scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > > >(scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >)
Line
Count
Source
1039
2.28k
{
1040
    if constexpr (ranges::contiguous_range<Range> &&
1041
                  ranges::sized_range<Range>) {
1042
        return r;
1043
    }
1044
    else if constexpr (std::is_same_v<
1045
                           ranges::const_iterator_t<Range>,
1046
                           typename detail::basic_scan_buffer<
1047
                               detail::char_t<Range>>::forward_iterator>) {
1048
        if constexpr (ranges::common_range<Range>) {
1049
            auto seg = r.begin().contiguous_segment();
1050
            auto dist =
1051
                static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1052
            return seg.substr(0, std::min(seg.size(), dist));
1053
        }
1054
        else {
1055
            return r.begin().contiguous_segment();
1056
        }
1057
    }
1058
2.28k
    else {
1059
2.28k
        return std::basic_string_view<detail::char_t<Range>>{};
1060
2.28k
    }
1061
2.28k
}
1062
1063
template <typename Range>
1064
auto get_as_contiguous(Range r)
1065
396
{
1066
396
    SCN_EXPECT(is_segment_contiguous(r));
1067
1068
    if constexpr (ranges::contiguous_range<Range> &&
1069
396
                  ranges::sized_range<Range>) {
1070
396
        return r;
1071
    }
1072
    else if constexpr (std::is_same_v<
1073
                           ranges::const_iterator_t<Range>,
1074
                           typename detail::basic_scan_buffer<
1075
0
                               detail::char_t<Range>>::forward_iterator>) {
1076
        if constexpr (ranges::common_range<Range>) {
1077
            return detail::make_string_view_from_pointers(
1078
                r.begin().to_contiguous_segment_iterator(),
1079
                r.end().to_contiguous_segment_iterator());
1080
        }
1081
0
        else {
1082
0
            return r.begin().contiguous_segment();
1083
0
        }
1084
    }
1085
0
    else {
1086
0
        SCN_EXPECT(false);
1087
0
        SCN_UNREACHABLE;
1088
        // for return type deduction
1089
0
        return std::basic_string_view<detail::char_t<Range>>{};
1090
0
    }
1091
396
}
Unexecuted instantiation: auto scn::v4::impl::get_as_contiguous<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
Unexecuted instantiation: auto scn::v4::impl::get_as_contiguous<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)
Unexecuted instantiation: auto scn::v4::impl::get_as_contiguous<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >)
auto scn::v4::impl::get_as_contiguous<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>)
Line
Count
Source
1065
396
{
1066
396
    SCN_EXPECT(is_segment_contiguous(r));
1067
1068
    if constexpr (ranges::contiguous_range<Range> &&
1069
396
                  ranges::sized_range<Range>) {
1070
396
        return r;
1071
    }
1072
    else if constexpr (std::is_same_v<
1073
                           ranges::const_iterator_t<Range>,
1074
                           typename detail::basic_scan_buffer<
1075
                               detail::char_t<Range>>::forward_iterator>) {
1076
        if constexpr (ranges::common_range<Range>) {
1077
            return detail::make_string_view_from_pointers(
1078
                r.begin().to_contiguous_segment_iterator(),
1079
                r.end().to_contiguous_segment_iterator());
1080
        }
1081
        else {
1082
            return r.begin().contiguous_segment();
1083
        }
1084
    }
1085
    else {
1086
        SCN_EXPECT(false);
1087
        SCN_UNREACHABLE;
1088
        // for return type deduction
1089
        return std::basic_string_view<detail::char_t<Range>>{};
1090
    }
1091
396
}
Unexecuted instantiation: auto scn::v4::impl::get_as_contiguous<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
1092
1093
template <typename Range>
1094
std::size_t guaranteed_minimum_size(Range r)
1095
8.76k
{
1096
    if constexpr (ranges::sized_range<Range>) {
1097
        return r.size();
1098
    }
1099
    else if constexpr (std::is_same_v<
1100
                           ranges::const_iterator_t<Range>,
1101
                           typename detail::basic_scan_buffer<
1102
0
                               detail::char_t<Range>>::forward_iterator>) {
1103
        if constexpr (ranges::common_range<Range>) {
1104
            return static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1105
        }
1106
0
        else {
1107
0
            if (r.begin().stores_parent()) {
1108
0
                return static_cast<size_t>(
1109
0
                    r.begin().parent()->chars_available() -
1110
0
                    r.begin().position());
1111
0
            }
1112
0
            return r.begin().contiguous_segment().size();
1113
0
        }
1114
    }
1115
8.76k
    else {
1116
8.76k
        return 0;
1117
8.76k
    }
1118
8.76k
}
Unexecuted instantiation: unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
Unexecuted instantiation: unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >)
Unexecuted instantiation: unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> >)
Unexecuted instantiation: unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >)
Unexecuted instantiation: unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> >)
unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >)
Line
Count
Source
1095
5.89k
{
1096
    if constexpr (ranges::sized_range<Range>) {
1097
        return r.size();
1098
    }
1099
    else if constexpr (std::is_same_v<
1100
                           ranges::const_iterator_t<Range>,
1101
                           typename detail::basic_scan_buffer<
1102
                               detail::char_t<Range>>::forward_iterator>) {
1103
        if constexpr (ranges::common_range<Range>) {
1104
            return static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1105
        }
1106
        else {
1107
            if (r.begin().stores_parent()) {
1108
                return static_cast<size_t>(
1109
                    r.begin().parent()->chars_available() -
1110
                    r.begin().position());
1111
            }
1112
            return r.begin().contiguous_segment().size();
1113
        }
1114
    }
1115
5.89k
    else {
1116
5.89k
        return 0;
1117
5.89k
    }
1118
5.89k
}
Unexecuted instantiation: unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
Unexecuted instantiation: unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >)
Unexecuted instantiation: unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> >)
Unexecuted instantiation: unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >)
Unexecuted instantiation: unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> >)
unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >)
Line
Count
Source
1095
884
{
1096
    if constexpr (ranges::sized_range<Range>) {
1097
        return r.size();
1098
    }
1099
    else if constexpr (std::is_same_v<
1100
                           ranges::const_iterator_t<Range>,
1101
                           typename detail::basic_scan_buffer<
1102
                               detail::char_t<Range>>::forward_iterator>) {
1103
        if constexpr (ranges::common_range<Range>) {
1104
            return static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1105
        }
1106
        else {
1107
            if (r.begin().stores_parent()) {
1108
                return static_cast<size_t>(
1109
                    r.begin().parent()->chars_available() -
1110
                    r.begin().position());
1111
            }
1112
            return r.begin().contiguous_segment().size();
1113
        }
1114
    }
1115
884
    else {
1116
884
        return 0;
1117
884
    }
1118
884
}
unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> >)
Line
Count
Source
1095
810
{
1096
    if constexpr (ranges::sized_range<Range>) {
1097
        return r.size();
1098
    }
1099
    else if constexpr (std::is_same_v<
1100
                           ranges::const_iterator_t<Range>,
1101
                           typename detail::basic_scan_buffer<
1102
                               detail::char_t<Range>>::forward_iterator>) {
1103
        if constexpr (ranges::common_range<Range>) {
1104
            return static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1105
        }
1106
        else {
1107
            if (r.begin().stores_parent()) {
1108
                return static_cast<size_t>(
1109
                    r.begin().parent()->chars_available() -
1110
                    r.begin().position());
1111
            }
1112
            return r.begin().contiguous_segment().size();
1113
        }
1114
    }
1115
810
    else {
1116
810
        return 0;
1117
810
    }
1118
810
}
unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >)
Line
Count
Source
1095
844
{
1096
    if constexpr (ranges::sized_range<Range>) {
1097
        return r.size();
1098
    }
1099
    else if constexpr (std::is_same_v<
1100
                           ranges::const_iterator_t<Range>,
1101
                           typename detail::basic_scan_buffer<
1102
                               detail::char_t<Range>>::forward_iterator>) {
1103
        if constexpr (ranges::common_range<Range>) {
1104
            return static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1105
        }
1106
        else {
1107
            if (r.begin().stores_parent()) {
1108
                return static_cast<size_t>(
1109
                    r.begin().parent()->chars_available() -
1110
                    r.begin().position());
1111
            }
1112
            return r.begin().contiguous_segment().size();
1113
        }
1114
    }
1115
844
    else {
1116
844
        return 0;
1117
844
    }
1118
844
}
Unexecuted instantiation: unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)
Unexecuted instantiation: unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> >)
unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >)
Line
Count
Source
1095
332
{
1096
    if constexpr (ranges::sized_range<Range>) {
1097
        return r.size();
1098
    }
1099
    else if constexpr (std::is_same_v<
1100
                           ranges::const_iterator_t<Range>,
1101
                           typename detail::basic_scan_buffer<
1102
                               detail::char_t<Range>>::forward_iterator>) {
1103
        if constexpr (ranges::common_range<Range>) {
1104
            return static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1105
        }
1106
        else {
1107
            if (r.begin().stores_parent()) {
1108
                return static_cast<size_t>(
1109
                    r.begin().parent()->chars_available() -
1110
                    r.begin().position());
1111
            }
1112
            return r.begin().contiguous_segment().size();
1113
        }
1114
    }
1115
332
    else {
1116
332
        return 0;
1117
332
    }
1118
332
}
Unexecuted instantiation: unsigned long scn::v4::impl::guaranteed_minimum_size<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)
1119
1120
template <typename I, typename T>
1121
struct iterator_value_result {
1122
    SCN_NO_UNIQUE_ADDRESS I iterator;
1123
    SCN_NO_UNIQUE_ADDRESS T value;
1124
};
1125
1126
}  // namespace impl
1127
1128
/////////////////////////////////////////////////////////////////
1129
// File support
1130
/////////////////////////////////////////////////////////////////
1131
1132
namespace detail {
1133
1134
template <typename FileInterface>
1135
basic_scan_file_buffer<FileInterface>::basic_scan_file_buffer(
1136
    FileInterface file)
1137
0
    : base(base::non_contiguous_tag{}), m_file(SCN_MOVE(file))
1138
0
{
1139
0
    m_file.lock();
1140
0
}
1141
1142
template <typename FileInterface>
1143
basic_scan_file_buffer<FileInterface>::~basic_scan_file_buffer()
1144
0
{
1145
0
    m_file.unlock();
1146
0
}
1147
1148
template <typename FileInterface>
1149
bool basic_scan_file_buffer<FileInterface>::fill()
1150
0
{
1151
0
    if (!this->m_current_view.empty()) {
1152
0
        this->m_putback_buffer.insert(this->m_putback_buffer.end(),
1153
0
                                      this->m_current_view.begin(),
1154
0
                                      this->m_current_view.end());
1155
0
    }
1156
1157
0
    if (m_file.has_buffering()) {
1158
0
        if (!this->m_current_view.empty()) {
1159
0
            m_file.unsafe_advance_n(this->m_current_view.size());
1160
0
        }
1161
1162
0
        if (m_file.buffer().empty()) {
1163
0
            m_file.fill_buffer();
1164
0
        }
1165
0
        m_current_view = m_file.buffer();
1166
0
        return !this->m_current_view.empty();
1167
0
    }
1168
1169
0
    this->m_latest = m_file.read_one();
1170
0
    if (!this->m_latest) {
1171
0
        this->m_current_view = {};
1172
0
        return false;
1173
0
    }
1174
1175
0
    this->m_current_view = {&*this->m_latest, 1};
1176
0
    return true;
1177
0
}
1178
1179
template <typename FileInterface>
1180
bool basic_scan_file_buffer<FileInterface>::sync(std::ptrdiff_t position)
1181
0
{
1182
0
    struct putback_wrapper {
1183
0
        putback_wrapper(FileInterface& i) : i(i)
1184
0
        {
1185
0
            i.prepare_putback();
1186
0
        }
1187
0
        ~putback_wrapper()
1188
0
        {
1189
0
            i.finalize_putback();
1190
0
        }
1191
1192
0
        FileInterface& i;
1193
0
    };
1194
1195
0
    if (m_file.has_buffering()) {
1196
0
        if (position <
1197
0
            static_cast<std::ptrdiff_t>(this->putback_buffer().size())) {
1198
0
            putback_wrapper wrapper{m_file};
1199
0
            auto segment = this->get_segment_starting_at(position);
1200
0
            for (auto it = segment.rbegin(); it != segment.rend(); ++it) {
1201
0
                if (!m_file.putback(*it)) {
1202
0
                    return false;
1203
0
                }
1204
0
            }
1205
0
            return true;
1206
0
        }
1207
1208
0
        m_file.unsafe_advance_n(position - static_cast<std::ptrdiff_t>(
1209
0
                                               this->putback_buffer().size()));
1210
0
        return true;
1211
0
    }
1212
1213
0
    const auto chars_avail = this->chars_available();
1214
0
    if (position == chars_avail) {
1215
0
        return true;
1216
0
    }
1217
1218
0
    putback_wrapper wrapper{m_file};
1219
0
    SCN_EXPECT(m_current_view.size() == 1);
1220
0
    m_file.putback(m_current_view.front());
1221
1222
0
    auto segment = std::string_view{this->putback_buffer()}.substr(position);
1223
0
    for (auto it = segment.rbegin(); it != segment.rend(); ++it) {
1224
0
        if (!m_file.putback(*it)) {
1225
0
            return false;
1226
0
        }
1227
0
    }
1228
0
    return true;
1229
0
}
1230
1231
}  // namespace detail
1232
1233
/////////////////////////////////////////////////////////////////
1234
// Unicode
1235
/////////////////////////////////////////////////////////////////
1236
1237
namespace impl {
1238
1239
template <typename CharT>
1240
constexpr bool validate_unicode(std::basic_string_view<CharT> src)
1241
13.6k
{
1242
13.6k
    auto it = src.begin();
1243
539k
    while (it != src.end()) {
1244
528k
        const auto len = detail::code_point_length_by_starting_code_unit(*it);
1245
528k
        if (len == 0) {
1246
1.30k
            return false;
1247
1.30k
        }
1248
527k
        if (src.end() - it < len) {
1249
234
            return false;
1250
234
        }
1251
527k
        const auto cp = detail::decode_code_point_exhaustive(
1252
527k
            detail::make_string_view_from_iterators<CharT>(it, it + len));
1253
527k
        if (cp >= detail::invalid_code_point) {
1254
1.36k
            return false;
1255
1.36k
        }
1256
525k
        it += len;
1257
525k
    }
1258
10.7k
    return true;
1259
13.6k
}
bool scn::v4::impl::validate_unicode<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Line
Count
Source
1241
8.48k
{
1242
8.48k
    auto it = src.begin();
1243
489k
    while (it != src.end()) {
1244
483k
        const auto len = detail::code_point_length_by_starting_code_unit(*it);
1245
483k
        if (len == 0) {
1246
1.30k
            return false;
1247
1.30k
        }
1248
481k
        if (src.end() - it < len) {
1249
234
            return false;
1250
234
        }
1251
481k
        const auto cp = detail::decode_code_point_exhaustive(
1252
481k
            detail::make_string_view_from_iterators<CharT>(it, it + len));
1253
481k
        if (cp >= detail::invalid_code_point) {
1254
414
            return false;
1255
414
        }
1256
481k
        it += len;
1257
481k
    }
1258
6.53k
    return true;
1259
8.48k
}
bool scn::v4::impl::validate_unicode<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)
Line
Count
Source
1241
5.14k
{
1242
5.14k
    auto it = src.begin();
1243
49.7k
    while (it != src.end()) {
1244
45.5k
        const auto len = detail::code_point_length_by_starting_code_unit(*it);
1245
45.5k
        if (len == 0) {
1246
0
            return false;
1247
0
        }
1248
45.5k
        if (src.end() - it < len) {
1249
0
            return false;
1250
0
        }
1251
45.5k
        const auto cp = detail::decode_code_point_exhaustive(
1252
45.5k
            detail::make_string_view_from_iterators<CharT>(it, it + len));
1253
45.5k
        if (cp >= detail::invalid_code_point) {
1254
948
            return false;
1255
948
        }
1256
44.6k
        it += len;
1257
44.6k
    }
1258
4.20k
    return true;
1259
5.14k
}
1260
1261
template <typename Range>
1262
constexpr auto get_start_for_next_code_point(Range input)
1263
    -> ranges::const_iterator_t<Range>
1264
9.43k
{
1265
9.43k
    auto it = input.begin();
1266
23.3k
    for (; it != input.end(); ++it) {
1267
21.8k
        if (detail::code_point_length_by_starting_code_unit(*it) != 0) {
1268
7.88k
            break;
1269
7.88k
        }
1270
21.8k
    }
1271
9.43k
    return it;
1272
9.43k
}
_ZN3scn2v44impl29get_start_for_next_code_pointINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_
Line
Count
Source
1264
5.49k
{
1265
5.49k
    auto it = input.begin();
1266
18.3k
    for (; it != input.end(); ++it) {
1267
17.0k
        if (detail::code_point_length_by_starting_code_unit(*it) != 0) {
1268
4.18k
            break;
1269
4.18k
        }
1270
17.0k
    }
1271
5.49k
    return it;
1272
5.49k
}
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_INS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENSF_ISH_E8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESR_
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKcSA_EENS1_15take_width_viewINSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEE8sentinelILb1EEEEENSC_ISI_E8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESR_
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESN_
_ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_
Line
Count
Source
1264
2.98k
{
1265
2.98k
    auto it = input.begin();
1266
3.52k
    for (; it != input.end(); ++it) {
1267
3.33k
        if (detail::code_point_length_by_starting_code_unit(*it) != 0) {
1268
2.79k
            break;
1269
2.79k
        }
1270
3.33k
    }
1271
2.98k
    return it;
1272
2.98k
}
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
_ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
1264
960
{
1265
960
    auto it = input.begin();
1266
1.45k
    for (; it != input.end(); ++it) {
1267
1.40k
        if (detail::code_point_length_by_starting_code_unit(*it) != 0) {
1268
906
            break;
1269
906
        }
1270
1.40k
    }
1271
960
    return it;
1272
960
}
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_INS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENSF_ISH_E8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESR_
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKwSA_EENS1_15take_width_viewINSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEE8sentinelILb1EEEEENSC_ISI_E8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESR_
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESN_
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENSC_ISE_E8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESO_
Unexecuted instantiation: _ZN3scn2v44impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENSC_ISE_E8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESO_
1273
1274
template <typename CharT>
1275
constexpr auto get_next_code_point(std::basic_string_view<CharT> input)
1276
    -> iterator_value_result<typename std::basic_string_view<CharT>::iterator,
1277
                             char32_t>
1278
204M
{
1279
204M
    SCN_EXPECT(!input.empty());
1280
1281
204M
    const auto len = detail::code_point_length_by_starting_code_unit(input[0]);
1282
204M
    if (SCN_UNLIKELY(len == 0)) {
1283
5.49k
        return {get_start_for_next_code_point(input),
1284
5.49k
                detail::invalid_code_point};
1285
5.49k
    }
1286
204M
    if (SCN_UNLIKELY(len > input.size())) {
1287
953
        return {input.end(), detail::invalid_code_point};
1288
953
    }
1289
1290
204M
    return {input.begin() + len,
1291
204M
            detail::decode_code_point_exhaustive(input.substr(0, len))};
1292
204M
}
scn::v4::impl::iterator_value_result<std::__1::basic_string_view<char, std::__1::char_traits<char> >::iterator, char32_t> scn::v4::impl::get_next_code_point<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Line
Count
Source
1278
268k
{
1279
268k
    SCN_EXPECT(!input.empty());
1280
1281
268k
    const auto len = detail::code_point_length_by_starting_code_unit(input[0]);
1282
268k
    if (SCN_UNLIKELY(len == 0)) {
1283
5.49k
        return {get_start_for_next_code_point(input),
1284
5.49k
                detail::invalid_code_point};
1285
5.49k
    }
1286
262k
    if (SCN_UNLIKELY(len > input.size())) {
1287
953
        return {input.end(), detail::invalid_code_point};
1288
953
    }
1289
1290
261k
    return {input.begin() + len,
1291
261k
            detail::decode_code_point_exhaustive(input.substr(0, len))};
1292
262k
}
scn::v4::impl::iterator_value_result<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >::iterator, char32_t> scn::v4::impl::get_next_code_point<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)
Line
Count
Source
1278
203M
{
1279
203M
    SCN_EXPECT(!input.empty());
1280
1281
203M
    const auto len = detail::code_point_length_by_starting_code_unit(input[0]);
1282
203M
    if (SCN_UNLIKELY(len == 0)) {
1283
0
        return {get_start_for_next_code_point(input),
1284
0
                detail::invalid_code_point};
1285
0
    }
1286
203M
    if (SCN_UNLIKELY(len > input.size())) {
1287
0
        return {input.end(), detail::invalid_code_point};
1288
0
    }
1289
1290
203M
    return {input.begin() + len,
1291
203M
            detail::decode_code_point_exhaustive(input.substr(0, len))};
1292
203M
}
1293
1294
template <typename CharT>
1295
constexpr auto get_next_code_point_valid(std::basic_string_view<CharT> input)
1296
    -> iterator_value_result<typename std::basic_string_view<CharT>::iterator,
1297
                             char32_t>
1298
116k
{
1299
116k
    SCN_EXPECT(!input.empty());
1300
1301
116k
    const auto len = detail::code_point_length_by_starting_code_unit(input[0]);
1302
116k
    SCN_EXPECT(len <= input.size());
1303
1304
116k
    return {input.begin() + len,
1305
116k
            detail::decode_code_point_exhaustive_valid(input.substr(0, len))};
1306
116k
}
1307
1308
template <typename CharT>
1309
struct is_first_char_space_result {
1310
    ranges::iterator_t<std::basic_string_view<CharT>> iterator;
1311
    char32_t cp;
1312
    bool is_space;
1313
};
1314
1315
template <typename CharT>
1316
inline constexpr auto is_first_char_space(std::basic_string_view<CharT> str)
1317
    -> is_first_char_space_result<CharT>
1318
203M
{
1319
    // TODO: optimize
1320
203M
    SCN_EXPECT(!str.empty());
1321
203M
    auto res = get_next_code_point(str);
1322
203M
    return {res.iterator, res.value, detail::is_cp_space(res.value)};
1323
203M
}
scn::v4::impl::is_first_char_space_result<char> scn::v4::impl::is_first_char_space<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Line
Count
Source
1318
43.5k
{
1319
    // TODO: optimize
1320
43.5k
    SCN_EXPECT(!str.empty());
1321
43.5k
    auto res = get_next_code_point(str);
1322
43.5k
    return {res.iterator, res.value, detail::is_cp_space(res.value)};
1323
43.5k
}
scn::v4::impl::is_first_char_space_result<wchar_t> scn::v4::impl::is_first_char_space<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)
Line
Count
Source
1318
203M
{
1319
    // TODO: optimize
1320
203M
    SCN_EXPECT(!str.empty());
1321
203M
    auto res = get_next_code_point(str);
1322
203M
    return {res.iterator, res.value, detail::is_cp_space(res.value)};
1323
203M
}
1324
1325
inline constexpr scan_expected<wchar_t> encode_code_point_as_wide_character(
1326
    char32_t cp,
1327
    bool error_on_overflow)
1328
0
{
1329
0
    SCN_EXPECT(cp < detail::invalid_code_point);
1330
0
    if constexpr (sizeof(wchar_t) == sizeof(char32_t)) {
1331
0
        SCN_UNUSED(error_on_overflow);
1332
0
        return static_cast<wchar_t>(cp);
1333
    }
1334
    else {
1335
        if (cp < 0x10000) {
1336
            return static_cast<wchar_t>(cp);
1337
        }
1338
        if (error_on_overflow) {
1339
            return detail::unexpected_scan_error(
1340
                scan_error::value_positive_overflow,
1341
                "Non-BMP code point can't be "
1342
                "narrowed to a single 2-byte "
1343
                "wchar_t code unit");
1344
        }
1345
        // Return the lead surrogate
1346
        return static_cast<wchar_t>(
1347
            (static_cast<uint32_t>(cp) - 0x10000) / 0x400 + 0xd800);
1348
    }
1349
0
}
1350
1351
template <typename SourceCharT, typename DestCharT>
1352
void transcode_to_string_impl_to32(std::basic_string_view<SourceCharT> src,
1353
                                   std::basic_string<DestCharT>& dest)
1354
2.76k
{
1355
2.76k
    static_assert(sizeof(DestCharT) == 4);
1356
1357
2.76k
    auto it = src.begin();
1358
149k
    while (it != src.end()) {
1359
146k
        auto res = get_next_code_point(
1360
146k
            detail::make_string_view_from_iterators<SourceCharT>(it,
1361
146k
                                                                 src.end()));
1362
146k
        if (SCN_UNLIKELY(res.value == detail::invalid_code_point)) {
1363
3.26k
            dest.push_back(DestCharT{0xfffd});
1364
3.26k
        }
1365
143k
        else {
1366
143k
            dest.push_back(res.value);
1367
143k
        }
1368
146k
        it = detail::make_string_view_iterator(src, res.iterator);
1369
146k
    }
1370
2.76k
}
1371
template <typename SourceCharT, typename DestCharT>
1372
void transcode_valid_to_string_impl_to32(
1373
    std::basic_string_view<SourceCharT> src,
1374
    std::basic_string<DestCharT>& dest)
1375
1.63k
{
1376
1.63k
    static_assert(sizeof(DestCharT) == 4);
1377
1378
1.63k
    auto it = src.begin();
1379
118k
    while (it != src.end()) {
1380
116k
        auto res = get_next_code_point_valid(
1381
116k
            detail::make_string_view_from_iterators<SourceCharT>(it,
1382
116k
                                                                 src.end()));
1383
116k
        SCN_EXPECT(res.value < detail::invalid_code_point);
1384
116k
        dest.push_back(res.value);
1385
116k
        it = detail::make_string_view_iterator(src, res.iterator);
1386
116k
    }
1387
1.63k
}
1388
1389
template <bool VerifiedValid, typename SourceCharT, typename DestCharT>
1390
void transcode_to_string_impl_32to8(std::basic_string_view<SourceCharT> src,
1391
                                    std::basic_string<DestCharT>& dest)
1392
1.05k
{
1393
1.05k
    static_assert(sizeof(SourceCharT) == 4);
1394
1.05k
    static_assert(sizeof(DestCharT) == 1);
1395
1396
9.47k
    for (auto cp : src) {
1397
9.47k
        const auto u32cp = static_cast<uint32_t>(cp);
1398
9.47k
        if (SCN_UNLIKELY(!VerifiedValid && cp >= detail::invalid_code_point)) {
1399
            // Replacement character
1400
0
            dest.push_back(static_cast<char>(0xef));
1401
0
            dest.push_back(static_cast<char>(0xbf));
1402
0
            dest.push_back(static_cast<char>(0xbd));
1403
0
        }
1404
9.47k
        else if (cp < 128) {
1405
7.99k
            dest.push_back(static_cast<char>(cp));
1406
7.99k
        }
1407
1.48k
        else if (cp < 2048) {
1408
136
            dest.push_back(
1409
136
                static_cast<char>(0xc0 | (static_cast<char>(u32cp >> 6))));
1410
136
            dest.push_back(
1411
136
                static_cast<char>(0x80 | (static_cast<char>(u32cp) & 0x3f)));
1412
136
        }
1413
1.34k
        else if (cp < 65536) {
1414
912
            dest.push_back(
1415
912
                static_cast<char>(0xe0 | (static_cast<char>(u32cp >> 12))));
1416
912
            dest.push_back(static_cast<char>(
1417
912
                0x80 | (static_cast<char>(u32cp >> 6) & 0x3f)));
1418
912
            dest.push_back(
1419
912
                static_cast<char>(0x80 | (static_cast<char>(u32cp) & 0x3f)));
1420
912
        }
1421
434
        else {
1422
434
            dest.push_back(
1423
434
                static_cast<char>(0xf0 | (static_cast<char>(u32cp >> 18))));
1424
434
            dest.push_back(static_cast<char>(
1425
434
                0x80 | (static_cast<char>(u32cp >> 12) & 0x3f)));
1426
434
            dest.push_back(static_cast<char>(
1427
434
                0x80 | (static_cast<char>(u32cp >> 6) & 0x3f)));
1428
434
            dest.push_back(
1429
434
                static_cast<char>(0x80 | (static_cast<char>(u32cp) & 0x3f)));
1430
434
        }
1431
9.47k
    }
1432
1.05k
}
1433
1434
template <bool VerifiedValid, typename SourceCharT, typename DestCharT>
1435
void transcode_to_string_impl_32to16(std::basic_string_view<SourceCharT> src,
1436
                                     std::basic_string<DestCharT>& dest)
1437
{
1438
    static_assert(sizeof(SourceCharT) == 4);
1439
    static_assert(sizeof(DestCharT) == 2);
1440
1441
    for (auto cp : src) {
1442
        const auto u32cp = static_cast<uint32_t>(cp);
1443
        if (SCN_UNLIKELY(!VerifiedValid && cp >= detail::invalid_code_point)) {
1444
            dest.push_back(char16_t{0xfffd});
1445
        }
1446
        else if (cp < 0x10000) {
1447
            dest.push_back(static_cast<char16_t>(cp));
1448
        }
1449
        else {
1450
            dest.push_back(
1451
                static_cast<char16_t>((u32cp - 0x10000) / 0x400 + 0xd800));
1452
            dest.push_back(
1453
                static_cast<char16_t>((u32cp - 0x10000) % 0x400 + 0xd800));
1454
        }
1455
    }
1456
}
1457
1458
template <typename SourceCharT, typename DestCharT>
1459
void transcode_to_string(std::basic_string_view<SourceCharT> src,
1460
                         std::basic_string<DestCharT>& dest)
1461
2.76k
{
1462
2.76k
    static_assert(sizeof(SourceCharT) != sizeof(DestCharT));
1463
1464
2.76k
    if constexpr (sizeof(SourceCharT) == 1) {
1465
        if constexpr (sizeof(DestCharT) == 2) {
1466
            std::u32string tmp;
1467
            transcode_to_string_impl_to32(src, tmp);
1468
            return transcode_to_string_impl_32to16<false>(
1469
                std::u32string_view{tmp}, dest);
1470
        }
1471
2.76k
        else if constexpr (sizeof(DestCharT) == 4) {
1472
2.76k
            return transcode_to_string_impl_to32(src, dest);
1473
2.76k
        }
1474
    }
1475
    else if constexpr (sizeof(SourceCharT) == 2) {
1476
        if constexpr (sizeof(DestCharT) == 1) {
1477
            std::u32string tmp;
1478
            transcode_to_string_impl_to32(src, tmp);
1479
            return transcode_to_string_impl_32to8<false>(
1480
                std::u32string_view{tmp}, dest);
1481
        }
1482
        else if constexpr (sizeof(DestCharT) == 4) {
1483
            return trasncode_to_string_impl_to32(src, dest);
1484
        }
1485
    }
1486
    else if constexpr (sizeof(SourceCharT) == 4) {
1487
        if constexpr (sizeof(DestCharT) == 1) {
1488
            return transcode_to_string_impl_32to8<false>(src, dest);
1489
        }
1490
        else if constexpr (sizeof(DestCharT) == 2) {
1491
            return transcode_to_string_impl_32to16<false>(src, dest);
1492
        }
1493
    }
1494
1495
2.76k
    SCN_EXPECT(false);
1496
2.76k
    SCN_UNREACHABLE;
1497
2.76k
}
1498
template <typename SourceCharT, typename DestCharT>
1499
void transcode_valid_to_string(std::basic_string_view<SourceCharT> src,
1500
                               std::basic_string<DestCharT>& dest)
1501
2.68k
{
1502
2.68k
    static_assert(sizeof(SourceCharT) != sizeof(DestCharT));
1503
1504
2.68k
    SCN_EXPECT(validate_unicode(src));
1505
2.68k
    if constexpr (sizeof(SourceCharT) == 1) {
1506
        if constexpr (sizeof(DestCharT) == 2) {
1507
            // TODO: Optimize, remove utf32-step, go direct utf8->utf16
1508
            std::u32string tmp;
1509
            transcode_valid_to_string_impl_to32(src, tmp);
1510
            return transcode_to_string_impl_32to16<true>(
1511
                std::u32string_view{tmp}, dest);
1512
        }
1513
1.63k
        else if constexpr (sizeof(DestCharT) == 4) {
1514
1.63k
            return transcode_valid_to_string_impl_to32(src, dest);
1515
1.63k
        }
1516
    }
1517
    else if constexpr (sizeof(SourceCharT) == 2) {
1518
        if constexpr (sizeof(DestCharT) == 1) {
1519
            std::u32string tmp;
1520
            transcode_valid_to_string_impl_to32(src, tmp);
1521
            return transcode_to_string_impl_32to8<true>(
1522
                std::u32string_view{tmp}, dest);
1523
        }
1524
        else if constexpr (sizeof(DestCharT) == 4) {
1525
            return trasncode_valid_to_string_impl_to32(src, dest);
1526
        }
1527
    }
1528
1.05k
    else if constexpr (sizeof(SourceCharT) == 4) {
1529
1.05k
        if constexpr (sizeof(DestCharT) == 1) {
1530
1.05k
            return transcode_to_string_impl_32to8<true>(src, dest);
1531
        }
1532
        else if constexpr (sizeof(DestCharT) == 2) {
1533
            return transcode_to_string_impl_32to16<true>(src, dest);
1534
        }
1535
1.05k
    }
1536
1537
2.68k
    SCN_EXPECT(false);
1538
2.68k
    SCN_UNREACHABLE;
1539
2.68k
}
void scn::v4::impl::transcode_valid_to_string<char, wchar_t>(std::__1::basic_string_view<char, std::__1::char_traits<char> >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
1501
1.63k
{
1502
1.63k
    static_assert(sizeof(SourceCharT) != sizeof(DestCharT));
1503
1504
1.63k
    SCN_EXPECT(validate_unicode(src));
1505
1.63k
    if constexpr (sizeof(SourceCharT) == 1) {
1506
        if constexpr (sizeof(DestCharT) == 2) {
1507
            // TODO: Optimize, remove utf32-step, go direct utf8->utf16
1508
            std::u32string tmp;
1509
            transcode_valid_to_string_impl_to32(src, tmp);
1510
            return transcode_to_string_impl_32to16<true>(
1511
                std::u32string_view{tmp}, dest);
1512
        }
1513
1.63k
        else if constexpr (sizeof(DestCharT) == 4) {
1514
1.63k
            return transcode_valid_to_string_impl_to32(src, dest);
1515
1.63k
        }
1516
    }
1517
    else if constexpr (sizeof(SourceCharT) == 2) {
1518
        if constexpr (sizeof(DestCharT) == 1) {
1519
            std::u32string tmp;
1520
            transcode_valid_to_string_impl_to32(src, tmp);
1521
            return transcode_to_string_impl_32to8<true>(
1522
                std::u32string_view{tmp}, dest);
1523
        }
1524
        else if constexpr (sizeof(DestCharT) == 4) {
1525
            return trasncode_valid_to_string_impl_to32(src, dest);
1526
        }
1527
    }
1528
    else if constexpr (sizeof(SourceCharT) == 4) {
1529
        if constexpr (sizeof(DestCharT) == 1) {
1530
            return transcode_to_string_impl_32to8<true>(src, dest);
1531
        }
1532
        else if constexpr (sizeof(DestCharT) == 2) {
1533
            return transcode_to_string_impl_32to16<true>(src, dest);
1534
        }
1535
    }
1536
1537
1.63k
    SCN_EXPECT(false);
1538
0
    SCN_UNREACHABLE;
1539
1.63k
}
void scn::v4::impl::transcode_valid_to_string<wchar_t, char>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
1501
1.05k
{
1502
1.05k
    static_assert(sizeof(SourceCharT) != sizeof(DestCharT));
1503
1504
1.05k
    SCN_EXPECT(validate_unicode(src));
1505
    if constexpr (sizeof(SourceCharT) == 1) {
1506
        if constexpr (sizeof(DestCharT) == 2) {
1507
            // TODO: Optimize, remove utf32-step, go direct utf8->utf16
1508
            std::u32string tmp;
1509
            transcode_valid_to_string_impl_to32(src, tmp);
1510
            return transcode_to_string_impl_32to16<true>(
1511
                std::u32string_view{tmp}, dest);
1512
        }
1513
        else if constexpr (sizeof(DestCharT) == 4) {
1514
            return transcode_valid_to_string_impl_to32(src, dest);
1515
        }
1516
    }
1517
    else if constexpr (sizeof(SourceCharT) == 2) {
1518
        if constexpr (sizeof(DestCharT) == 1) {
1519
            std::u32string tmp;
1520
            transcode_valid_to_string_impl_to32(src, tmp);
1521
            return transcode_to_string_impl_32to8<true>(
1522
                std::u32string_view{tmp}, dest);
1523
        }
1524
        else if constexpr (sizeof(DestCharT) == 4) {
1525
            return trasncode_valid_to_string_impl_to32(src, dest);
1526
        }
1527
    }
1528
1.05k
    else if constexpr (sizeof(SourceCharT) == 4) {
1529
1.05k
        if constexpr (sizeof(DestCharT) == 1) {
1530
1.05k
            return transcode_to_string_impl_32to8<true>(src, dest);
1531
        }
1532
        else if constexpr (sizeof(DestCharT) == 2) {
1533
            return transcode_to_string_impl_32to16<true>(src, dest);
1534
        }
1535
1.05k
    }
1536
1537
1.05k
    SCN_EXPECT(false);
1538
0
    SCN_UNREACHABLE;
1539
1.05k
}
1540
1541
template <typename CharT>
1542
constexpr void for_each_code_point(std::basic_string_view<CharT> input,
1543
                                   function_ref<void(char32_t)> cb)
1544
38.4k
{
1545
    // TODO: Could be optimized by being eager
1546
38.4k
    auto it = input.begin();
1547
93.4k
    while (it != input.end()) {
1548
55.0k
        auto res = get_next_code_point(
1549
55.0k
            detail::make_string_view_from_iterators<CharT>(it, input.end()));
1550
55.0k
        cb(res.value);
1551
55.0k
        it = detail::make_string_view_iterator(input, res.iterator);
1552
55.0k
    }
1553
38.4k
}
void scn::v4::impl::for_each_code_point<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >, scn::v4::impl::function_ref<void (char32_t), void (char32_t)>)
Line
Count
Source
1544
35.1k
{
1545
    // TODO: Could be optimized by being eager
1546
35.1k
    auto it = input.begin();
1547
81.9k
    while (it != input.end()) {
1548
46.8k
        auto res = get_next_code_point(
1549
46.8k
            detail::make_string_view_from_iterators<CharT>(it, input.end()));
1550
46.8k
        cb(res.value);
1551
46.8k
        it = detail::make_string_view_iterator(input, res.iterator);
1552
46.8k
    }
1553
35.1k
}
void scn::v4::impl::for_each_code_point<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, scn::v4::impl::function_ref<void (char32_t), void (char32_t)>)
Line
Count
Source
1544
3.28k
{
1545
    // TODO: Could be optimized by being eager
1546
3.28k
    auto it = input.begin();
1547
11.4k
    while (it != input.end()) {
1548
8.17k
        auto res = get_next_code_point(
1549
8.17k
            detail::make_string_view_from_iterators<CharT>(it, input.end()));
1550
8.17k
        cb(res.value);
1551
8.17k
        it = detail::make_string_view_iterator(input, res.iterator);
1552
8.17k
    }
1553
3.28k
}
1554
1555
template <typename CharT>
1556
constexpr void for_each_code_point_valid(std::basic_string_view<CharT> input,
1557
                                         function_ref<void(char32_t)> cb)
1558
{
1559
    auto it = input.begin();
1560
    while (it != input.end()) {
1561
        auto res = get_next_code_point_valid(
1562
            detail::make_string_view_from_iterators<CharT>(it, input.end()));
1563
        cb(res.value);
1564
        it = detail::make_string_view_iterator(input, res.iterator);
1565
    }
1566
}
1567
1568
/////////////////////////////////////////////////////////////////
1569
// contiguous_range_factory
1570
/////////////////////////////////////////////////////////////////
1571
1572
template <typename View>
1573
class take_width_view;
1574
1575
template <typename CharT>
1576
struct string_view_wrapper {
1577
    using char_type = CharT;
1578
    using string_type = std::basic_string<CharT>;
1579
    using string_view_type = std::basic_string_view<CharT>;
1580
1581
    constexpr string_view_wrapper() = default;
1582
1583
    template <typename Range,
1584
              std::enable_if_t<ranges::borrowed_range<Range> &&
1585
                               ranges::contiguous_range<Range> &&
1586
                               ranges::sized_range<Range>>* = nullptr>
1587
45.2k
    constexpr string_view_wrapper(Range&& r) : sv(ranges::data(r), r.size())
1588
45.2k
    {
1589
45.2k
    }
_ZN3scn2v44impl19string_view_wrapperIcEC2INS0_6ranges6detail9subrange_8subrangeIPKcSA_EETnPNSt3__19enable_ifIXaaaasr6rangesE14borrowed_rangeIT_Esr6rangesE16contiguous_rangeISE_Esr6rangesE11sized_rangeISE_EEvE4typeELPv0EEEOSE_
Line
Count
Source
1587
12.0k
    constexpr string_view_wrapper(Range&& r) : sv(ranges::data(r), r.size())
1588
12.0k
    {
1589
12.0k
    }
_ZN3scn2v44impl19string_view_wrapperIcEC2IRNS0_6ranges6detail9subrange_8subrangeIPKcSA_EETnPNSt3__19enable_ifIXaaaasr6rangesE14borrowed_rangeIT_Esr6rangesE16contiguous_rangeISF_Esr6rangesE11sized_rangeISF_EEvE4typeELPv0EEEOSF_
Line
Count
Source
1587
16.7k
    constexpr string_view_wrapper(Range&& r) : sv(ranges::data(r), r.size())
1588
16.7k
    {
1589
16.7k
    }
_ZN3scn2v44impl19string_view_wrapperIwEC2INS0_6ranges6detail9subrange_8subrangeIPKwSA_EETnPNSt3__19enable_ifIXaaaasr6rangesE14borrowed_rangeIT_Esr6rangesE16contiguous_rangeISE_Esr6rangesE11sized_rangeISE_EEvE4typeELPv0EEEOSE_
Line
Count
Source
1587
9.29k
    constexpr string_view_wrapper(Range&& r) : sv(ranges::data(r), r.size())
1588
9.29k
    {
1589
9.29k
    }
_ZN3scn2v44impl19string_view_wrapperIcEC2IRNSt3__117basic_string_viewIcNS5_11char_traitsIcEEEETnPNS5_9enable_ifIXaaaasr6rangesE14borrowed_rangeIT_Esr6rangesE16contiguous_rangeISC_Esr6rangesE11sized_rangeISC_EEvE4typeELPv0EEEOSC_
Line
Count
Source
1587
7.06k
    constexpr string_view_wrapper(Range&& r) : sv(ranges::data(r), r.size())
1588
7.06k
    {
1589
7.06k
    }
1590
1591
    template <typename Range,
1592
              std::enable_if_t<ranges::borrowed_range<Range> &&
1593
                               ranges::contiguous_range<Range> &&
1594
                               ranges::sized_range<Range>>* = nullptr>
1595
    void assign(Range&& r)
1596
    {
1597
        sv = string_view_type{ranges::data(r), r.size()};
1598
    }
1599
1600
    constexpr auto view() const
1601
73.0k
    {
1602
73.0k
        return sv;
1603
73.0k
    }
scn::v4::impl::string_view_wrapper<char>::view() const
Line
Count
Source
1601
62.1k
    {
1602
62.1k
        return sv;
1603
62.1k
    }
scn::v4::impl::string_view_wrapper<wchar_t>::view() const
Line
Count
Source
1601
10.9k
    {
1602
10.9k
        return sv;
1603
10.9k
    }
1604
1605
    constexpr bool stores_allocated_string() const
1606
0
    {
1607
0
        return false;
1608
0
    }
Unexecuted instantiation: scn::v4::impl::string_view_wrapper<char>::stores_allocated_string() const
Unexecuted instantiation: scn::v4::impl::string_view_wrapper<wchar_t>::stores_allocated_string() const
1609
1610
    [[noreturn]] string_type get_allocated_string() const
1611
    {
1612
        SCN_EXPECT(false);
1613
        SCN_UNREACHABLE;
1614
    }
1615
1616
    string_view_type sv;
1617
};
1618
1619
template <typename Range>
1620
string_view_wrapper(Range)
1621
    -> string_view_wrapper<detail::char_t<detail::remove_cvref_t<Range>>>;
1622
1623
template <typename CharT>
1624
class contiguous_range_factory {
1625
public:
1626
    using char_type = CharT;
1627
    using string_type = std::basic_string<CharT>;
1628
    using string_view_type = std::basic_string_view<CharT>;
1629
1630
4.76k
    contiguous_range_factory() = default;
scn::v4::impl::contiguous_range_factory<char>::contiguous_range_factory()
Line
Count
Source
1630
2.53k
    contiguous_range_factory() = default;
scn::v4::impl::contiguous_range_factory<wchar_t>::contiguous_range_factory()
Line
Count
Source
1630
2.22k
    contiguous_range_factory() = default;
1631
1632
    template <typename Range,
1633
              std::enable_if_t<ranges::forward_range<Range>>* = nullptr>
1634
    contiguous_range_factory(Range&& range)
1635
2.86k
    {
1636
2.86k
        emplace_range(SCN_FWD(range));
1637
2.86k
    }
Unexecuted instantiation: _ZN3scn2v44impl24contiguous_range_factoryIcEC2INS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEESG_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEOSK_
Unexecuted instantiation: _ZN3scn2v44impl24contiguous_range_factoryIcEC2INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorESC_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEOSG_
_ZN3scn2v44impl24contiguous_range_factoryIcEC2INS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EESD_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEOSH_
Line
Count
Source
1635
2.12k
    {
1636
2.12k
        emplace_range(SCN_FWD(range));
1637
2.12k
    }
Unexecuted instantiation: _ZN3scn2v44impl24contiguous_range_factoryIwEC2INS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEESG_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEOSK_
Unexecuted instantiation: _ZN3scn2v44impl24contiguous_range_factoryIwEC2INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorESC_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEOSG_
_ZN3scn2v44impl24contiguous_range_factoryIwEC2INS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EESD_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEOSH_
Line
Count
Source
1635
738
    {
1636
738
        emplace_range(SCN_FWD(range));
1637
738
    }
1638
1639
    contiguous_range_factory(string_view_wrapper<CharT> svw)
1640
        : m_storage(std::nullopt), m_view(svw.view())
1641
    {
1642
    }
1643
1644
    contiguous_range_factory(const contiguous_range_factory&) = delete;
1645
    contiguous_range_factory& operator=(const contiguous_range_factory&) =
1646
        delete;
1647
1648
    contiguous_range_factory(contiguous_range_factory&& other)
1649
        : m_storage(SCN_MOVE(other.m_storage))
1650
    {
1651
        if (m_storage) {
1652
            m_view = *m_storage;
1653
        }
1654
        else {
1655
            m_view = other.m_view;
1656
        }
1657
    }
1658
    contiguous_range_factory& operator=(contiguous_range_factory&& other)
1659
    {
1660
        m_storage = SCN_MOVE(other.m_storage);
1661
        if (m_storage) {
1662
            m_view = *m_storage;
1663
        }
1664
        else {
1665
            m_view = other.m_view;
1666
        }
1667
        return *this;
1668
    }
1669
1670
7.62k
    ~contiguous_range_factory() = default;
scn::v4::impl::contiguous_range_factory<char>::~contiguous_range_factory()
Line
Count
Source
1670
4.65k
    ~contiguous_range_factory() = default;
scn::v4::impl::contiguous_range_factory<wchar_t>::~contiguous_range_factory()
Line
Count
Source
1670
2.96k
    ~contiguous_range_factory() = default;
1671
1672
    template <typename Range,
1673
              std::enable_if_t<ranges::forward_range<Range>>* = nullptr>
1674
    void assign(Range&& range)
1675
1.87k
    {
1676
1.87k
        emplace_range(SCN_FWD(range));
1677
1.87k
    }
Unexecuted instantiation: _ZN3scn2v44impl24contiguous_range_factoryIcE6assignINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEESG_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSK_
Unexecuted instantiation: _ZN3scn2v44impl24contiguous_range_factoryIcE6assignINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorESC_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSG_
Unexecuted instantiation: _ZN3scn2v44impl24contiguous_range_factoryIcE6assignINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EESD_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSH_
_ZN3scn2v44impl24contiguous_range_factoryIcE6assignINS0_6ranges6detail9subrange_8subrangeIPKcSA_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSE_
Line
Count
Source
1675
886
    {
1676
886
        emplace_range(SCN_FWD(range));
1677
886
    }
Unexecuted instantiation: _ZN3scn2v44impl24contiguous_range_factoryIwE6assignINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEESG_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSK_
Unexecuted instantiation: _ZN3scn2v44impl24contiguous_range_factoryIwE6assignINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorESC_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSG_
_ZN3scn2v44impl24contiguous_range_factoryIwE6assignINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EESD_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSH_
Line
Count
Source
1675
30
    {
1676
30
        emplace_range(SCN_FWD(range));
1677
30
    }
_ZN3scn2v44impl24contiguous_range_factoryIwE6assignINS0_6ranges6detail9subrange_8subrangeIPKwSA_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSE_
Line
Count
Source
1675
902
    {
1676
902
        emplace_range(SCN_FWD(range));
1677
902
    }
Unexecuted instantiation: _ZN3scn2v44impl24contiguous_range_factoryIcE6assignINSt3__112basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEETnPNS5_9enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSD_
_ZN3scn2v44impl24contiguous_range_factoryIwE6assignINSt3__112basic_stringIwNS5_11char_traitsIwEENS5_9allocatorIwEEEETnPNS5_9enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSD_
Line
Count
Source
1675
52
    {
1676
52
        emplace_range(SCN_FWD(range));
1677
52
    }
1678
1679
    string_view_type view() const
1680
7.54k
    {
1681
7.54k
        return m_view;
1682
7.54k
    }
scn::v4::impl::contiguous_range_factory<char>::view() const
Line
Count
Source
1680
4.35k
    {
1681
4.35k
        return m_view;
1682
4.35k
    }
scn::v4::impl::contiguous_range_factory<wchar_t>::view() const
Line
Count
Source
1680
3.18k
    {
1681
3.18k
        return m_view;
1682
3.18k
    }
1683
1684
    constexpr bool stores_allocated_string() const
1685
1.61k
    {
1686
1.61k
        return m_storage.has_value();
1687
1.61k
    }
scn::v4::impl::contiguous_range_factory<char>::stores_allocated_string() const
Line
Count
Source
1685
912
    {
1686
912
        return m_storage.has_value();
1687
912
    }
scn::v4::impl::contiguous_range_factory<wchar_t>::stores_allocated_string() const
Line
Count
Source
1685
702
    {
1686
702
        return m_storage.has_value();
1687
702
    }
1688
1689
    string_type& get_allocated_string() &
1690
836
    {
1691
836
        SCN_EXPECT(stores_allocated_string());
1692
836
        return *m_storage;
1693
836
    }
scn::v4::impl::contiguous_range_factory<char>::get_allocated_string() &
Line
Count
Source
1690
456
    {
1691
456
        SCN_EXPECT(stores_allocated_string());
1692
456
        return *m_storage;
1693
456
    }
scn::v4::impl::contiguous_range_factory<wchar_t>::get_allocated_string() &
Line
Count
Source
1690
380
    {
1691
380
        SCN_EXPECT(stores_allocated_string());
1692
380
        return *m_storage;
1693
380
    }
1694
    const string_type& get_allocated_string() const&
1695
    {
1696
        SCN_EXPECT(stores_allocated_string());
1697
        return *m_storage;
1698
    }
1699
    string_type&& get_allocated_string() &&
1700
    {
1701
        SCN_EXPECT(stores_allocated_string());
1702
        return *m_storage;
1703
    }
1704
1705
    string_type& make_into_allocated_string()
1706
0
    {
1707
0
        if (stores_allocated_string()) {
1708
0
            return get_allocated_string();
1709
0
        }
1710
1711
0
        auto& str = m_storage.emplace(m_view.data(), m_view.size());
1712
0
        m_view = string_view_type{str.data(), str.size()};
1713
0
        return str;
1714
0
    }
Unexecuted instantiation: scn::v4::impl::contiguous_range_factory<char>::make_into_allocated_string()
Unexecuted instantiation: scn::v4::impl::contiguous_range_factory<wchar_t>::make_into_allocated_string()
1715
1716
private:
1717
    template <typename Range>
1718
    void emplace_range(Range&& range)
1719
4.73k
    {
1720
4.73k
        using value_t = ranges::range_value_t<Range>;
1721
1722
        if constexpr (ranges::borrowed_range<Range> &&
1723
                      ranges::contiguous_range<Range> &&
1724
1.78k
                      ranges::sized_range<Range>) {
1725
1.78k
            m_storage.reset();
1726
1.78k
            m_view = string_view_type{ranges::data(range), range.size()};
1727
        }
1728
        else if constexpr (std::is_same_v<detail::remove_cvref_t<Range>,
1729
52
                                          std::basic_string<CharT>>) {
1730
52
            m_storage.emplace(SCN_FWD(range));
1731
52
            m_view = string_view_type{*m_storage};
1732
        }
1733
        else if constexpr (std::is_same_v<ranges::iterator_t<Range>,
1734
                                          typename detail::basic_scan_buffer<
1735
                                              value_t>::forward_iterator> &&
1736
0
                           ranges::common_range<Range>) {
1737
0
            auto beg_seg = range.begin().contiguous_segment();
1738
0
            auto end_seg = range.end().contiguous_segment();
1739
0
            if (SCN_UNLIKELY(detail::to_address(beg_seg.end()) !=
1740
0
                             detail::to_address(end_seg.end()))) {
1741
0
                auto& str = m_storage.emplace();
1742
0
                str.reserve(range.end().position() - range.begin().position());
1743
0
                std::copy(range.begin(), range.end(), std::back_inserter(str));
1744
0
                m_view = string_view_type{str};
1745
0
                return;
1746
0
            }
1747
1748
0
            m_view = detail::make_string_view_from_pointers(beg_seg.data(),
1749
0
                                                            end_seg.data());
1750
0
            m_storage.reset();
1751
        }
1752
2.89k
        else {
1753
2.89k
            auto& str = m_storage.emplace();
1754
            if constexpr (ranges::sized_range<Range>) {
1755
                str.reserve(range.size());
1756
            }
1757
2.89k
            if constexpr (ranges::common_range<Range>) {
1758
2.89k
                std::copy(ranges::begin(range), ranges::end(range),
1759
2.89k
                          std::back_inserter(str));
1760
            }
1761
            else {
1762
                for (auto it = ranges::begin(range); it != ranges::end(range);
1763
                     ++it) {
1764
                    str.push_back(*it);
1765
                }
1766
            }
1767
2.89k
            m_view = string_view_type{str};
1768
2.89k
        }
1769
4.73k
    }
Unexecuted instantiation: void scn::v4::impl::contiguous_range_factory<char>::emplace_range<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >&&)
Unexecuted instantiation: void scn::v4::impl::contiguous_range_factory<char>::emplace_range<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::detail::basic_scan_buffer<char>::forward_iterator> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::detail::basic_scan_buffer<char>::forward_iterator>&&)
void scn::v4::impl::contiguous_range_factory<char>::emplace_range<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >&&)
Line
Count
Source
1719
2.12k
    {
1720
2.12k
        using value_t = ranges::range_value_t<Range>;
1721
1722
        if constexpr (ranges::borrowed_range<Range> &&
1723
                      ranges::contiguous_range<Range> &&
1724
                      ranges::sized_range<Range>) {
1725
            m_storage.reset();
1726
            m_view = string_view_type{ranges::data(range), range.size()};
1727
        }
1728
        else if constexpr (std::is_same_v<detail::remove_cvref_t<Range>,
1729
                                          std::basic_string<CharT>>) {
1730
            m_storage.emplace(SCN_FWD(range));
1731
            m_view = string_view_type{*m_storage};
1732
        }
1733
        else if constexpr (std::is_same_v<ranges::iterator_t<Range>,
1734
                                          typename detail::basic_scan_buffer<
1735
                                              value_t>::forward_iterator> &&
1736
                           ranges::common_range<Range>) {
1737
            auto beg_seg = range.begin().contiguous_segment();
1738
            auto end_seg = range.end().contiguous_segment();
1739
            if (SCN_UNLIKELY(detail::to_address(beg_seg.end()) !=
1740
                             detail::to_address(end_seg.end()))) {
1741
                auto& str = m_storage.emplace();
1742
                str.reserve(range.end().position() - range.begin().position());
1743
                std::copy(range.begin(), range.end(), std::back_inserter(str));
1744
                m_view = string_view_type{str};
1745
                return;
1746
            }
1747
1748
            m_view = detail::make_string_view_from_pointers(beg_seg.data(),
1749
                                                            end_seg.data());
1750
            m_storage.reset();
1751
        }
1752
2.12k
        else {
1753
2.12k
            auto& str = m_storage.emplace();
1754
            if constexpr (ranges::sized_range<Range>) {
1755
                str.reserve(range.size());
1756
            }
1757
2.12k
            if constexpr (ranges::common_range<Range>) {
1758
2.12k
                std::copy(ranges::begin(range), ranges::end(range),
1759
2.12k
                          std::back_inserter(str));
1760
            }
1761
            else {
1762
                for (auto it = ranges::begin(range); it != ranges::end(range);
1763
                     ++it) {
1764
                    str.push_back(*it);
1765
                }
1766
            }
1767
2.12k
            m_view = string_view_type{str};
1768
2.12k
        }
1769
2.12k
    }
void scn::v4::impl::contiguous_range_factory<char>::emplace_range<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>&&)
Line
Count
Source
1719
886
    {
1720
886
        using value_t = ranges::range_value_t<Range>;
1721
1722
        if constexpr (ranges::borrowed_range<Range> &&
1723
                      ranges::contiguous_range<Range> &&
1724
886
                      ranges::sized_range<Range>) {
1725
886
            m_storage.reset();
1726
886
            m_view = string_view_type{ranges::data(range), range.size()};
1727
        }
1728
        else if constexpr (std::is_same_v<detail::remove_cvref_t<Range>,
1729
                                          std::basic_string<CharT>>) {
1730
            m_storage.emplace(SCN_FWD(range));
1731
            m_view = string_view_type{*m_storage};
1732
        }
1733
        else if constexpr (std::is_same_v<ranges::iterator_t<Range>,
1734
                                          typename detail::basic_scan_buffer<
1735
                                              value_t>::forward_iterator> &&
1736
                           ranges::common_range<Range>) {
1737
            auto beg_seg = range.begin().contiguous_segment();
1738
            auto end_seg = range.end().contiguous_segment();
1739
            if (SCN_UNLIKELY(detail::to_address(beg_seg.end()) !=
1740
                             detail::to_address(end_seg.end()))) {
1741
                auto& str = m_storage.emplace();
1742
                str.reserve(range.end().position() - range.begin().position());
1743
                std::copy(range.begin(), range.end(), std::back_inserter(str));
1744
                m_view = string_view_type{str};
1745
                return;
1746
            }
1747
1748
            m_view = detail::make_string_view_from_pointers(beg_seg.data(),
1749
                                                            end_seg.data());
1750
            m_storage.reset();
1751
        }
1752
        else {
1753
            auto& str = m_storage.emplace();
1754
            if constexpr (ranges::sized_range<Range>) {
1755
                str.reserve(range.size());
1756
            }
1757
            if constexpr (ranges::common_range<Range>) {
1758
                std::copy(ranges::begin(range), ranges::end(range),
1759
                          std::back_inserter(str));
1760
            }
1761
            else {
1762
                for (auto it = ranges::begin(range); it != ranges::end(range);
1763
                     ++it) {
1764
                    str.push_back(*it);
1765
                }
1766
            }
1767
            m_view = string_view_type{str};
1768
        }
1769
886
    }
Unexecuted instantiation: void scn::v4::impl::contiguous_range_factory<wchar_t>::emplace_range<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >&&)
Unexecuted instantiation: void scn::v4::impl::contiguous_range_factory<wchar_t>::emplace_range<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>&&)
void scn::v4::impl::contiguous_range_factory<wchar_t>::emplace_range<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >&&)
Line
Count
Source
1719
768
    {
1720
768
        using value_t = ranges::range_value_t<Range>;
1721
1722
        if constexpr (ranges::borrowed_range<Range> &&
1723
                      ranges::contiguous_range<Range> &&
1724
                      ranges::sized_range<Range>) {
1725
            m_storage.reset();
1726
            m_view = string_view_type{ranges::data(range), range.size()};
1727
        }
1728
        else if constexpr (std::is_same_v<detail::remove_cvref_t<Range>,
1729
                                          std::basic_string<CharT>>) {
1730
            m_storage.emplace(SCN_FWD(range));
1731
            m_view = string_view_type{*m_storage};
1732
        }
1733
        else if constexpr (std::is_same_v<ranges::iterator_t<Range>,
1734
                                          typename detail::basic_scan_buffer<
1735
                                              value_t>::forward_iterator> &&
1736
                           ranges::common_range<Range>) {
1737
            auto beg_seg = range.begin().contiguous_segment();
1738
            auto end_seg = range.end().contiguous_segment();
1739
            if (SCN_UNLIKELY(detail::to_address(beg_seg.end()) !=
1740
                             detail::to_address(end_seg.end()))) {
1741
                auto& str = m_storage.emplace();
1742
                str.reserve(range.end().position() - range.begin().position());
1743
                std::copy(range.begin(), range.end(), std::back_inserter(str));
1744
                m_view = string_view_type{str};
1745
                return;
1746
            }
1747
1748
            m_view = detail::make_string_view_from_pointers(beg_seg.data(),
1749
                                                            end_seg.data());
1750
            m_storage.reset();
1751
        }
1752
768
        else {
1753
768
            auto& str = m_storage.emplace();
1754
            if constexpr (ranges::sized_range<Range>) {
1755
                str.reserve(range.size());
1756
            }
1757
768
            if constexpr (ranges::common_range<Range>) {
1758
768
                std::copy(ranges::begin(range), ranges::end(range),
1759
768
                          std::back_inserter(str));
1760
            }
1761
            else {
1762
                for (auto it = ranges::begin(range); it != ranges::end(range);
1763
                     ++it) {
1764
                    str.push_back(*it);
1765
                }
1766
            }
1767
768
            m_view = string_view_type{str};
1768
768
        }
1769
768
    }
void scn::v4::impl::contiguous_range_factory<wchar_t>::emplace_range<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>&&)
Line
Count
Source
1719
902
    {
1720
902
        using value_t = ranges::range_value_t<Range>;
1721
1722
        if constexpr (ranges::borrowed_range<Range> &&
1723
                      ranges::contiguous_range<Range> &&
1724
902
                      ranges::sized_range<Range>) {
1725
902
            m_storage.reset();
1726
902
            m_view = string_view_type{ranges::data(range), range.size()};
1727
        }
1728
        else if constexpr (std::is_same_v<detail::remove_cvref_t<Range>,
1729
                                          std::basic_string<CharT>>) {
1730
            m_storage.emplace(SCN_FWD(range));
1731
            m_view = string_view_type{*m_storage};
1732
        }
1733
        else if constexpr (std::is_same_v<ranges::iterator_t<Range>,
1734
                                          typename detail::basic_scan_buffer<
1735
                                              value_t>::forward_iterator> &&
1736
                           ranges::common_range<Range>) {
1737
            auto beg_seg = range.begin().contiguous_segment();
1738
            auto end_seg = range.end().contiguous_segment();
1739
            if (SCN_UNLIKELY(detail::to_address(beg_seg.end()) !=
1740
                             detail::to_address(end_seg.end()))) {
1741
                auto& str = m_storage.emplace();
1742
                str.reserve(range.end().position() - range.begin().position());
1743
                std::copy(range.begin(), range.end(), std::back_inserter(str));
1744
                m_view = string_view_type{str};
1745
                return;
1746
            }
1747
1748
            m_view = detail::make_string_view_from_pointers(beg_seg.data(),
1749
                                                            end_seg.data());
1750
            m_storage.reset();
1751
        }
1752
        else {
1753
            auto& str = m_storage.emplace();
1754
            if constexpr (ranges::sized_range<Range>) {
1755
                str.reserve(range.size());
1756
            }
1757
            if constexpr (ranges::common_range<Range>) {
1758
                std::copy(ranges::begin(range), ranges::end(range),
1759
                          std::back_inserter(str));
1760
            }
1761
            else {
1762
                for (auto it = ranges::begin(range); it != ranges::end(range);
1763
                     ++it) {
1764
                    str.push_back(*it);
1765
                }
1766
            }
1767
            m_view = string_view_type{str};
1768
        }
1769
902
    }
Unexecuted instantiation: void scn::v4::impl::contiguous_range_factory<char>::emplace_range<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&&)
void scn::v4::impl::contiguous_range_factory<wchar_t>::emplace_range<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&&)
Line
Count
Source
1719
52
    {
1720
52
        using value_t = ranges::range_value_t<Range>;
1721
1722
        if constexpr (ranges::borrowed_range<Range> &&
1723
                      ranges::contiguous_range<Range> &&
1724
                      ranges::sized_range<Range>) {
1725
            m_storage.reset();
1726
            m_view = string_view_type{ranges::data(range), range.size()};
1727
        }
1728
        else if constexpr (std::is_same_v<detail::remove_cvref_t<Range>,
1729
52
                                          std::basic_string<CharT>>) {
1730
52
            m_storage.emplace(SCN_FWD(range));
1731
52
            m_view = string_view_type{*m_storage};
1732
        }
1733
        else if constexpr (std::is_same_v<ranges::iterator_t<Range>,
1734
                                          typename detail::basic_scan_buffer<
1735
                                              value_t>::forward_iterator> &&
1736
                           ranges::common_range<Range>) {
1737
            auto beg_seg = range.begin().contiguous_segment();
1738
            auto end_seg = range.end().contiguous_segment();
1739
            if (SCN_UNLIKELY(detail::to_address(beg_seg.end()) !=
1740
                             detail::to_address(end_seg.end()))) {
1741
                auto& str = m_storage.emplace();
1742
                str.reserve(range.end().position() - range.begin().position());
1743
                std::copy(range.begin(), range.end(), std::back_inserter(str));
1744
                m_view = string_view_type{str};
1745
                return;
1746
            }
1747
1748
            m_view = detail::make_string_view_from_pointers(beg_seg.data(),
1749
                                                            end_seg.data());
1750
            m_storage.reset();
1751
        }
1752
        else {
1753
            auto& str = m_storage.emplace();
1754
            if constexpr (ranges::sized_range<Range>) {
1755
                str.reserve(range.size());
1756
            }
1757
            if constexpr (ranges::common_range<Range>) {
1758
                std::copy(ranges::begin(range), ranges::end(range),
1759
                          std::back_inserter(str));
1760
            }
1761
            else {
1762
                for (auto it = ranges::begin(range); it != ranges::end(range);
1763
                     ++it) {
1764
                    str.push_back(*it);
1765
                }
1766
            }
1767
            m_view = string_view_type{str};
1768
        }
1769
52
    }
1770
1771
    std::optional<string_type> m_storage{std::nullopt};
1772
    string_view_type m_view{};
1773
};
1774
1775
template <typename Range>
1776
contiguous_range_factory(Range)
1777
    -> contiguous_range_factory<detail::char_t<detail::remove_cvref_t<Range>>>;
1778
1779
template <typename Range>
1780
auto make_contiguous_buffer(Range&& range)
1781
48.0k
{
1782
    if constexpr (ranges::borrowed_range<Range> &&
1783
                  ranges::contiguous_range<Range> &&
1784
45.2k
                  ranges::sized_range<Range>) {
1785
45.2k
        return string_view_wrapper{SCN_FWD(range)};
1786
    }
1787
2.86k
    else {
1788
2.86k
        return contiguous_range_factory{SCN_FWD(range)};
1789
2.86k
    }
1790
48.0k
}
Unexecuted instantiation: auto scn::v4::impl::make_contiguous_buffer<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >&&)
Unexecuted instantiation: auto scn::v4::impl::make_contiguous_buffer<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::detail::basic_scan_buffer<char>::forward_iterator> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::detail::basic_scan_buffer<char>::forward_iterator>&&)
auto scn::v4::impl::make_contiguous_buffer<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >&&)
Line
Count
Source
1781
2.12k
{
1782
    if constexpr (ranges::borrowed_range<Range> &&
1783
                  ranges::contiguous_range<Range> &&
1784
                  ranges::sized_range<Range>) {
1785
        return string_view_wrapper{SCN_FWD(range)};
1786
    }
1787
2.12k
    else {
1788
2.12k
        return contiguous_range_factory{SCN_FWD(range)};
1789
2.12k
    }
1790
2.12k
}
auto scn::v4::impl::make_contiguous_buffer<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>&&)
Line
Count
Source
1781
12.0k
{
1782
    if constexpr (ranges::borrowed_range<Range> &&
1783
                  ranges::contiguous_range<Range> &&
1784
12.0k
                  ranges::sized_range<Range>) {
1785
12.0k
        return string_view_wrapper{SCN_FWD(range)};
1786
    }
1787
    else {
1788
        return contiguous_range_factory{SCN_FWD(range)};
1789
    }
1790
12.0k
}
auto scn::v4::impl::make_contiguous_buffer<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>&>(scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>&)
Line
Count
Source
1781
16.7k
{
1782
    if constexpr (ranges::borrowed_range<Range> &&
1783
                  ranges::contiguous_range<Range> &&
1784
16.7k
                  ranges::sized_range<Range>) {
1785
16.7k
        return string_view_wrapper{SCN_FWD(range)};
1786
    }
1787
    else {
1788
        return contiguous_range_factory{SCN_FWD(range)};
1789
    }
1790
16.7k
}
Unexecuted instantiation: auto scn::v4::impl::make_contiguous_buffer<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >&&)
Unexecuted instantiation: auto scn::v4::impl::make_contiguous_buffer<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator>&&)
auto scn::v4::impl::make_contiguous_buffer<scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> > >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >&&)
Line
Count
Source
1781
738
{
1782
    if constexpr (ranges::borrowed_range<Range> &&
1783
                  ranges::contiguous_range<Range> &&
1784
                  ranges::sized_range<Range>) {
1785
        return string_view_wrapper{SCN_FWD(range)};
1786
    }
1787
738
    else {
1788
738
        return contiguous_range_factory{SCN_FWD(range)};
1789
738
    }
1790
738
}
auto scn::v4::impl::make_contiguous_buffer<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>&&)
Line
Count
Source
1781
9.29k
{
1782
    if constexpr (ranges::borrowed_range<Range> &&
1783
                  ranges::contiguous_range<Range> &&
1784
9.29k
                  ranges::sized_range<Range>) {
1785
9.29k
        return string_view_wrapper{SCN_FWD(range)};
1786
    }
1787
    else {
1788
        return contiguous_range_factory{SCN_FWD(range)};
1789
    }
1790
9.29k
}
auto scn::v4::impl::make_contiguous_buffer<std::__1::basic_string_view<char, std::__1::char_traits<char> >&>(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Line
Count
Source
1781
7.06k
{
1782
    if constexpr (ranges::borrowed_range<Range> &&
1783
                  ranges::contiguous_range<Range> &&
1784
7.06k
                  ranges::sized_range<Range>) {
1785
7.06k
        return string_view_wrapper{SCN_FWD(range)};
1786
    }
1787
    else {
1788
        return contiguous_range_factory{SCN_FWD(range)};
1789
    }
1790
7.06k
}
1791
}  // namespace impl
1792
1793
/////////////////////////////////////////////////////////////////
1794
// locale stuff
1795
/////////////////////////////////////////////////////////////////
1796
1797
#if !SCN_DISABLE_LOCALE
1798
1799
namespace detail {
1800
extern template locale_ref::locale_ref(const std::locale&);
1801
extern template auto locale_ref::get() const -> std::locale;
1802
}  // namespace detail
1803
1804
namespace impl {
1805
template <typename Facet>
1806
const Facet& get_facet(detail::locale_ref loc)
1807
{
1808
    auto stdloc = loc.get<std::locale>();
1809
    SCN_EXPECT(std::has_facet<Facet>(stdloc));
1810
    return std::use_facet<Facet>(stdloc);
1811
}
1812
1813
template <typename Facet>
1814
const Facet& get_or_add_facet(std::locale& stdloc)
1815
230
{
1816
230
    if (std::has_facet<Facet>(stdloc)) {
1817
230
        return std::use_facet<Facet>(stdloc);
1818
230
    }
1819
0
    stdloc = std::locale(stdloc, new Facet{});
1820
0
    return std::use_facet<Facet>(stdloc);
1821
230
}
std::__1::numpunct<char> const& scn::v4::impl::get_or_add_facet<std::__1::numpunct<char> >(std::__1::locale&)
Line
Count
Source
1815
88
{
1816
88
    if (std::has_facet<Facet>(stdloc)) {
1817
88
        return std::use_facet<Facet>(stdloc);
1818
88
    }
1819
0
    stdloc = std::locale(stdloc, new Facet{});
1820
0
    return std::use_facet<Facet>(stdloc);
1821
88
}
std::__1::numpunct<wchar_t> const& scn::v4::impl::get_or_add_facet<std::__1::numpunct<wchar_t> >(std::__1::locale&)
Line
Count
Source
1815
142
{
1816
142
    if (std::has_facet<Facet>(stdloc)) {
1817
142
        return std::use_facet<Facet>(stdloc);
1818
142
    }
1819
0
    stdloc = std::locale(stdloc, new Facet{});
1820
0
    return std::use_facet<Facet>(stdloc);
1821
142
}
1822
1823
class clocale_restorer {
1824
public:
1825
58
    clocale_restorer(int cat) : m_category(cat)
1826
58
    {
1827
58
        const auto loc = std::setlocale(cat, nullptr);
1828
58
        std::strcpy(m_locbuf, loc);
1829
58
    }
1830
    ~clocale_restorer()
1831
58
    {
1832
        // Restore locale to what it was before
1833
58
        std::setlocale(m_category, m_locbuf);
1834
58
    }
1835
1836
    clocale_restorer(const clocale_restorer&) = delete;
1837
    clocale_restorer(clocale_restorer&&) = delete;
1838
    clocale_restorer& operator=(const clocale_restorer&) = delete;
1839
    clocale_restorer& operator=(clocale_restorer&&) = delete;
1840
1841
private:
1842
    // For whatever reason, this cannot be stored in the heap if
1843
    // setlocale hasn't been called before, or msan errors with
1844
    // 'use-of-unitialized-value' when resetting the locale
1845
    // back. POSIX specifies that the content of loc may not be
1846
    // static, so we need to save it ourselves
1847
    char m_locbuf[64] = {0};
1848
1849
    int m_category;
1850
};
1851
1852
class set_clocale_classic_guard {
1853
public:
1854
58
    set_clocale_classic_guard(int cat) : m_restorer(cat)
1855
58
    {
1856
58
        std::setlocale(cat, "C");
1857
58
    }
1858
1859
private:
1860
    clocale_restorer m_restorer;
1861
};
1862
}  // namespace impl
1863
1864
namespace impl {
1865
struct classic_with_thsep_tag {};
1866
1867
template <typename CharT>
1868
struct localized_number_formatting_options {
1869
2.38k
    localized_number_formatting_options() = default;
scn::v4::impl::localized_number_formatting_options<char>::localized_number_formatting_options()
Line
Count
Source
1869
1.26k
    localized_number_formatting_options() = default;
scn::v4::impl::localized_number_formatting_options<wchar_t>::localized_number_formatting_options()
Line
Count
Source
1869
1.11k
    localized_number_formatting_options() = default;
1870
1871
    localized_number_formatting_options(classic_with_thsep_tag)
1872
0
    {
1873
0
        grouping = "\3";
1874
0
        thousands_sep = CharT{','};
1875
0
    }
Unexecuted instantiation: scn::v4::impl::localized_number_formatting_options<char>::localized_number_formatting_options(scn::v4::impl::classic_with_thsep_tag)
Unexecuted instantiation: scn::v4::impl::localized_number_formatting_options<wchar_t>::localized_number_formatting_options(scn::v4::impl::classic_with_thsep_tag)
1876
1877
    localized_number_formatting_options(detail::locale_ref loc)
1878
182
    {
1879
182
        auto stdloc = loc.get<std::locale>();
1880
182
        const auto& numpunct = get_or_add_facet<std::numpunct<CharT>>(stdloc);
1881
182
        grouping = numpunct.grouping();
1882
182
        thousands_sep =
1883
182
            grouping.length() != 0 ? numpunct.thousands_sep() : CharT{0};
1884
182
        decimal_point = numpunct.decimal_point();
1885
182
    }
scn::v4::impl::localized_number_formatting_options<char>::localized_number_formatting_options(scn::v4::detail::locale_ref)
Line
Count
Source
1878
62
    {
1879
62
        auto stdloc = loc.get<std::locale>();
1880
62
        const auto& numpunct = get_or_add_facet<std::numpunct<CharT>>(stdloc);
1881
62
        grouping = numpunct.grouping();
1882
62
        thousands_sep =
1883
62
            grouping.length() != 0 ? numpunct.thousands_sep() : CharT{0};
1884
62
        decimal_point = numpunct.decimal_point();
1885
62
    }
scn::v4::impl::localized_number_formatting_options<wchar_t>::localized_number_formatting_options(scn::v4::detail::locale_ref)
Line
Count
Source
1878
120
    {
1879
120
        auto stdloc = loc.get<std::locale>();
1880
120
        const auto& numpunct = get_or_add_facet<std::numpunct<CharT>>(stdloc);
1881
120
        grouping = numpunct.grouping();
1882
120
        thousands_sep =
1883
120
            grouping.length() != 0 ? numpunct.thousands_sep() : CharT{0};
1884
120
        decimal_point = numpunct.decimal_point();
1885
120
    }
1886
1887
    std::string grouping{};
1888
    CharT thousands_sep{0};
1889
    CharT decimal_point{CharT{'.'}};
1890
};
1891
}  // namespace impl
1892
1893
#else
1894
1895
namespace impl {
1896
struct set_clocale_classic_guard {
1897
    set_clocale_classic_guard(int) {}
1898
};
1899
1900
struct classic_with_thsep_tag {};
1901
1902
template <typename CharT>
1903
struct localized_number_formatting_options {
1904
    localized_number_formatting_options() = default;
1905
1906
    localized_number_formatting_options(classic_with_thsep_tag)
1907
    {
1908
        grouping = "\3";
1909
        thousands_sep = CharT{','};
1910
    }
1911
1912
    std::string grouping{};
1913
    CharT thousands_sep{0};
1914
    CharT decimal_point{CharT{'.'}};
1915
};
1916
}  // namespace impl
1917
1918
#endif  // !SCN_DISABLE_LOCALE
1919
1920
/////////////////////////////////////////////////////////////////
1921
// Range reading algorithms
1922
/////////////////////////////////////////////////////////////////
1923
1924
namespace impl {
1925
1926
std::string_view::iterator find_classic_space_narrow_fast(
1927
    std::string_view source);
1928
1929
std::string_view::iterator find_classic_nonspace_narrow_fast(
1930
    std::string_view source);
1931
1932
std::string_view::iterator find_nondecimal_digit_narrow_fast(
1933
    std::string_view source);
1934
1935
template <typename Range>
1936
auto read_all(Range range) -> ranges::const_iterator_t<Range>
1937
2.03k
{
1938
2.03k
    return ranges::next(range.begin(), range.end());
1939
2.03k
}
_ZN3scn2v44impl8read_allINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
1937
886
{
1938
886
    return ranges::next(range.begin(), range.end());
1939
886
}
Unexecuted instantiation: _ZN3scn2v44impl8read_allINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_
_ZN3scn2v44impl8read_allINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_
Line
Count
Source
1937
168
{
1938
168
    return ranges::next(range.begin(), range.end());
1939
168
}
_ZN3scn2v44impl8read_allINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
1937
898
{
1938
898
    return ranges::next(range.begin(), range.end());
1939
898
}
Unexecuted instantiation: _ZN3scn2v44impl8read_allINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_
_ZN3scn2v44impl8read_allINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_
Line
Count
Source
1937
84
{
1938
84
    return ranges::next(range.begin(), range.end());
1939
84
}
1940
1941
template <typename Range>
1942
auto read_code_unit(Range range)
1943
    -> eof_expected<ranges::const_iterator_t<Range>>
1944
16.4k
{
1945
16.4k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1946
30
        return unexpected(e);
1947
30
    }
1948
1949
16.4k
    return ranges::next(range.begin());
1950
16.4k
}
Unexecuted instantiation: _ZN3scn2v44impl14read_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
Unexecuted instantiation: _ZN3scn2v44impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_
Unexecuted instantiation: _ZN3scn2v44impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_
_ZN3scn2v44impl14read_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
1944
2.43k
{
1945
2.43k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1946
0
        return unexpected(e);
1947
0
    }
1948
1949
2.43k
    return ranges::next(range.begin());
1950
2.43k
}
_ZN3scn2v44impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_
Line
Count
Source
1944
40
{
1945
40
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1946
0
        return unexpected(e);
1947
0
    }
1948
1949
40
    return ranges::next(range.begin());
1950
40
}
_ZN3scn2v44impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_
Line
Count
Source
1944
6.35k
{
1945
6.35k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1946
0
        return unexpected(e);
1947
0
    }
1948
1949
6.35k
    return ranges::next(range.begin());
1950
6.35k
}
Unexecuted instantiation: _ZN3scn2v44impl14read_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
Unexecuted instantiation: _ZN3scn2v44impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_
Unexecuted instantiation: _ZN3scn2v44impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_
_ZN3scn2v44impl14read_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
1944
1.34k
{
1945
1.34k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1946
0
        return unexpected(e);
1947
0
    }
1948
1949
1.34k
    return ranges::next(range.begin());
1950
1.34k
}
_ZN3scn2v44impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_
Line
Count
Source
1944
124
{
1945
124
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1946
30
        return unexpected(e);
1947
30
    }
1948
1949
94
    return ranges::next(range.begin());
1950
124
}
_ZN3scn2v44impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_
Line
Count
Source
1944
6.14k
{
1945
6.14k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1946
0
        return unexpected(e);
1947
0
    }
1948
1949
6.14k
    return ranges::next(range.begin());
1950
6.14k
}
1951
1952
template <typename Range>
1953
auto read_exactly_n_code_units(Range range, std::ptrdiff_t count)
1954
    -> eof_expected<ranges::const_iterator_t<Range>>
1955
46.1k
{
1956
46.1k
    SCN_EXPECT(count >= 0);
1957
1958
46.1k
    if constexpr (ranges::sized_range<Range>) {
1959
37.3k
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1960
37.3k
        if (sz < count) {
1961
692
            return unexpected(eof_error::eof);
1962
692
        }
1963
1964
36.6k
        return ranges::next(range.begin(), count);
1965
    }
1966
8.76k
    else {
1967
8.76k
        auto it = range.begin();
1968
8.76k
        if (guaranteed_minimum_size(range) >= count) {
1969
0
            return ranges::next(it, count);
1970
0
        }
1971
1972
33.3k
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1973
25.5k
            if (it == range.end()) {
1974
912
                return unexpected(eof_error::eof);
1975
912
            }
1976
25.5k
        }
1977
1978
7.85k
        return it;
1979
8.76k
    }
1980
46.1k
}
Unexecuted instantiation: _ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_l
Unexecuted instantiation: _ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_l
Unexecuted instantiation: _ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_INS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENSF_ISH_E8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_l
_ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_l
Line
Count
Source
1955
31.9k
{
1956
31.9k
    SCN_EXPECT(count >= 0);
1957
1958
31.9k
    if constexpr (ranges::sized_range<Range>) {
1959
31.9k
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1960
31.9k
        if (sz < count) {
1961
530
            return unexpected(eof_error::eof);
1962
530
        }
1963
1964
31.3k
        return ranges::next(range.begin(), count);
1965
    }
1966
    else {
1967
        auto it = range.begin();
1968
        if (guaranteed_minimum_size(range) >= count) {
1969
            return ranges::next(it, count);
1970
        }
1971
1972
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1973
            if (it == range.end()) {
1974
                return unexpected(eof_error::eof);
1975
            }
1976
        }
1977
1978
        return it;
1979
    }
1980
31.9k
}
Unexecuted instantiation: _ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEEESO_l
Unexecuted instantiation: _ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKcSA_EENS1_15take_width_viewINSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEE8sentinelILb1EEEEENSC_ISI_E8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEEESS_l
_ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_l
Line
Count
Source
1955
5.89k
{
1956
5.89k
    SCN_EXPECT(count >= 0);
1957
1958
    if constexpr (ranges::sized_range<Range>) {
1959
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1960
        if (sz < count) {
1961
            return unexpected(eof_error::eof);
1962
        }
1963
1964
        return ranges::next(range.begin(), count);
1965
    }
1966
5.89k
    else {
1967
5.89k
        auto it = range.begin();
1968
5.89k
        if (guaranteed_minimum_size(range) >= count) {
1969
0
            return ranges::next(it, count);
1970
0
        }
1971
1972
21.6k
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1973
16.0k
            if (it == range.end()) {
1974
310
                return unexpected(eof_error::eof);
1975
310
            }
1976
16.0k
        }
1977
1978
5.58k
        return it;
1979
5.89k
    }
1980
5.89k
}
Unexecuted instantiation: _ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_l
Unexecuted instantiation: _ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_l
Unexecuted instantiation: _ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_INS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENSF_ISH_E8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_l
_ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_l
Line
Count
Source
1955
5.46k
{
1956
5.46k
    SCN_EXPECT(count >= 0);
1957
1958
5.46k
    if constexpr (ranges::sized_range<Range>) {
1959
5.46k
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1960
5.46k
        if (sz < count) {
1961
162
            return unexpected(eof_error::eof);
1962
162
        }
1963
1964
5.30k
        return ranges::next(range.begin(), count);
1965
    }
1966
    else {
1967
        auto it = range.begin();
1968
        if (guaranteed_minimum_size(range) >= count) {
1969
            return ranges::next(it, count);
1970
        }
1971
1972
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1973
            if (it == range.end()) {
1974
                return unexpected(eof_error::eof);
1975
            }
1976
        }
1977
1978
        return it;
1979
    }
1980
5.46k
}
Unexecuted instantiation: _ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEEESO_l
Unexecuted instantiation: _ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKwSA_EENS1_15take_width_viewINSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEE8sentinelILb1EEEEENSC_ISI_E8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEEESS_l
_ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_l
Line
Count
Source
1955
884
{
1956
884
    SCN_EXPECT(count >= 0);
1957
1958
    if constexpr (ranges::sized_range<Range>) {
1959
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1960
        if (sz < count) {
1961
            return unexpected(eof_error::eof);
1962
        }
1963
1964
        return ranges::next(range.begin(), count);
1965
    }
1966
884
    else {
1967
884
        auto it = range.begin();
1968
884
        if (guaranteed_minimum_size(range) >= count) {
1969
0
            return ranges::next(it, count);
1970
0
        }
1971
1972
2.76k
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1973
2.09k
            if (it == range.end()) {
1974
216
                return unexpected(eof_error::eof);
1975
216
            }
1976
2.09k
        }
1977
1978
668
        return it;
1979
884
    }
1980
884
}
_ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENSC_ISE_E8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_l
Line
Count
Source
1955
810
{
1956
810
    SCN_EXPECT(count >= 0);
1957
1958
    if constexpr (ranges::sized_range<Range>) {
1959
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1960
        if (sz < count) {
1961
            return unexpected(eof_error::eof);
1962
        }
1963
1964
        return ranges::next(range.begin(), count);
1965
    }
1966
810
    else {
1967
810
        auto it = range.begin();
1968
810
        if (guaranteed_minimum_size(range) >= count) {
1969
0
            return ranges::next(it, count);
1970
0
        }
1971
1972
3.24k
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1973
2.54k
            if (it == range.end()) {
1974
108
                return unexpected(eof_error::eof);
1975
108
            }
1976
2.54k
        }
1977
1978
702
        return it;
1979
810
    }
1980
810
}
_ZN3scn2v44impl25read_exactly_n_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_l
Line
Count
Source
1955
844
{
1956
844
    SCN_EXPECT(count >= 0);
1957
1958
    if constexpr (ranges::sized_range<Range>) {
1959
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1960
        if (sz < count) {
1961
            return unexpected(eof_error::eof);
1962
        }
1963
1964
        return ranges::next(range.begin(), count);
1965
    }
1966
844
    else {
1967
844
        auto it = range.begin();
1968
844
        if (guaranteed_minimum_size(range) >= count) {
1969
0
            return ranges::next(it, count);
1970
0
        }
1971
1972
4.21k
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1973
3.54k
            if (it == range.end()) {
1974
176
                return unexpected(eof_error::eof);
1975
176
            }
1976
3.54k
        }
1977
1978
668
        return it;
1979
844
    }
1980
844
}
Unexecuted instantiation: _ZN3scn2v44impl25read_exactly_n_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_l
Unexecuted instantiation: _ZN3scn2v44impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENSC_ISE_E8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_l
_ZN3scn2v44impl25read_exactly_n_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_l
Line
Count
Source
1955
332
{
1956
332
    SCN_EXPECT(count >= 0);
1957
1958
    if constexpr (ranges::sized_range<Range>) {
1959
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1960
        if (sz < count) {
1961
            return unexpected(eof_error::eof);
1962
        }
1963
1964
        return ranges::next(range.begin(), count);
1965
    }
1966
332
    else {
1967
332
        auto it = range.begin();
1968
332
        if (guaranteed_minimum_size(range) >= count) {
1969
0
            return ranges::next(it, count);
1970
0
        }
1971
1972
1.56k
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1973
1.33k
            if (it == range.end()) {
1974
102
                return unexpected(eof_error::eof);
1975
102
            }
1976
1.33k
        }
1977
1978
230
        return it;
1979
332
    }
1980
332
}
Unexecuted instantiation: _ZN3scn2v44impl25read_exactly_n_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_l
1981
1982
template <typename Iterator, typename CharT>
1983
struct read_code_point_into_result {
1984
    Iterator iterator;
1985
    std::basic_string<CharT> codepoint;
1986
1987
    bool is_valid() const
1988
411k
    {
1989
411k
        return !codepoint.empty();
1990
411k
    }
Unexecuted instantiation: scn::v4::impl::read_code_point_into_result<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, char>::is_valid() const
Unexecuted instantiation: scn::v4::impl::read_code_point_into_result<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, char>::is_valid() const
Unexecuted instantiation: scn::v4::impl::read_code_point_into_result<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, char>::is_valid() const
scn::v4::impl::read_code_point_into_result<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, char>::is_valid() const
Line
Count
Source
1988
28.1k
    {
1989
28.1k
        return !codepoint.empty();
1990
28.1k
    }
Unexecuted instantiation: scn::v4::impl::read_code_point_into_result<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, char>::is_valid() const
scn::v4::impl::read_code_point_into_result<char const*, char>::is_valid() const
Line
Count
Source
1988
317k
    {
1989
317k
        return !codepoint.empty();
1990
317k
    }
Unexecuted instantiation: scn::v4::impl::read_code_point_into_result<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >, wchar_t>::is_valid() const
Unexecuted instantiation: scn::v4::impl::read_code_point_into_result<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, wchar_t>::is_valid() const
Unexecuted instantiation: scn::v4::impl::read_code_point_into_result<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, wchar_t>::is_valid() const
scn::v4::impl::read_code_point_into_result<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, wchar_t>::is_valid() const
Line
Count
Source
1988
12.6k
    {
1989
12.6k
        return !codepoint.empty();
1990
12.6k
    }
scn::v4::impl::read_code_point_into_result<wchar_t const*, wchar_t>::is_valid() const
Line
Count
Source
1988
49.0k
    {
1989
49.0k
        return !codepoint.empty();
1990
49.0k
    }
Unexecuted instantiation: scn::v4::impl::read_code_point_into_result<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, wchar_t>::is_valid() const
scn::v4::impl::read_code_point_into_result<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, char>::is_valid() const
Line
Count
Source
1988
3.39k
    {
1989
3.39k
        return !codepoint.empty();
1990
3.39k
    }
scn::v4::impl::read_code_point_into_result<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, wchar_t>::is_valid() const
Line
Count
Source
1988
1.30k
    {
1989
1.30k
        return !codepoint.empty();
1990
1.30k
    }
1991
};
1992
1993
template <typename Range>
1994
auto read_code_point_into(Range range)
1995
    -> read_code_point_into_result<ranges::const_iterator_t<Range>,
1996
                                   detail::char_t<Range>>
1997
411k
{
1998
411k
    SCN_EXPECT(!is_range_eof(range));
1999
411k
    using string_type = std::basic_string<detail::char_t<Range>>;
2000
2001
411k
    auto it = range.begin();
2002
411k
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
2003
2004
411k
    if (SCN_UNLIKELY(len == 0)) {
2005
3.94k
        ++it;
2006
3.94k
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
2007
3.94k
        return {it, {}};
2008
3.94k
    }
2009
2010
407k
    if (len == 1) {
2011
356k
        ++it;
2012
356k
        return {it, string_type(1, *range.begin())};
2013
356k
    }
2014
2015
51.4k
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
2016
51.4k
    return {it, string_type{range.begin(), it}};
2017
407k
}
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_INS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENSF_ISH_E8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISS_EEE4typeEEESS_
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISO_EEE4typeEEESO_
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKcSA_EENS1_15take_width_viewINSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEE8sentinelILb1EEEEENSC_ISI_E8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEENDTcl4implISS_EEE4typeEEESS_
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEE8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEENDTcl4implISO_EEE4typeEEESO_
_ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISL_EEE4typeEEESL_
Line
Count
Source
1997
28.1k
{
1998
28.1k
    SCN_EXPECT(!is_range_eof(range));
1999
28.1k
    using string_type = std::basic_string<detail::char_t<Range>>;
2000
2001
28.1k
    auto it = range.begin();
2002
28.1k
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
2003
2004
28.1k
    if (SCN_UNLIKELY(len == 0)) {
2005
2.98k
        ++it;
2006
2.98k
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
2007
2.98k
        return {it, {}};
2008
2.98k
    }
2009
2010
25.1k
    if (len == 1) {
2011
21.7k
        ++it;
2012
21.7k
        return {it, string_type(1, *range.begin())};
2013
21.7k
    }
2014
2015
3.45k
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
2016
3.45k
    return {it, string_type{range.begin(), it}};
2017
25.1k
}
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISG_EEE4typeEEESG_
_ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISD_EEE4typeEEESD_
Line
Count
Source
1997
317k
{
1998
317k
    SCN_EXPECT(!is_range_eof(range));
1999
317k
    using string_type = std::basic_string<detail::char_t<Range>>;
2000
2001
317k
    auto it = range.begin();
2002
317k
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
2003
2004
317k
    if (SCN_UNLIKELY(len == 0)) {
2005
960
        ++it;
2006
960
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
2007
960
        return {it, {}};
2008
960
    }
2009
2010
316k
    if (len == 1) {
2011
269k
        ++it;
2012
269k
        return {it, string_type(1, *range.begin())};
2013
269k
    }
2014
2015
47.2k
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
2016
47.2k
    return {it, string_type{range.begin(), it}};
2017
316k
}
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_INS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENSF_ISH_E8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISS_EEE4typeEEESS_
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISO_EEE4typeEEESO_
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKwSA_EENS1_15take_width_viewINSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEE8sentinelILb1EEEEENSC_ISI_E8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEENDTcl4implISS_EEE4typeEEESS_
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEE8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEENDTcl4implISO_EEE4typeEEESO_
_ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISD_EEE4typeEEESD_
Line
Count
Source
1997
49.0k
{
1998
49.0k
    SCN_EXPECT(!is_range_eof(range));
1999
49.0k
    using string_type = std::basic_string<detail::char_t<Range>>;
2000
2001
49.0k
    auto it = range.begin();
2002
49.0k
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
2003
2004
49.0k
    if (SCN_UNLIKELY(len == 0)) {
2005
0
        ++it;
2006
0
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
2007
0
        return {it, {}};
2008
0
    }
2009
2010
49.0k
    if (len == 1) {
2011
49.0k
        ++it;
2012
49.0k
        return {it, string_type(1, *range.begin())};
2013
49.0k
    }
2014
2015
0
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
2016
0
    return {it, string_type{range.begin(), it}};
2017
49.0k
}
_ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISL_EEE4typeEEESL_
Line
Count
Source
1997
12.6k
{
1998
12.6k
    SCN_EXPECT(!is_range_eof(range));
1999
12.6k
    using string_type = std::basic_string<detail::char_t<Range>>;
2000
2001
12.6k
    auto it = range.begin();
2002
12.6k
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
2003
2004
12.6k
    if (SCN_UNLIKELY(len == 0)) {
2005
0
        ++it;
2006
0
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
2007
0
        return {it, {}};
2008
0
    }
2009
2010
12.6k
    if (len == 1) {
2011
12.6k
        ++it;
2012
12.6k
        return {it, string_type(1, *range.begin())};
2013
12.6k
    }
2014
2015
0
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
2016
0
    return {it, string_type{range.begin(), it}};
2017
12.6k
}
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISG_EEE4typeEEESG_
_ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENSC_ISE_E8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISP_EEE4typeEEESP_
Line
Count
Source
1997
3.39k
{
1998
3.39k
    SCN_EXPECT(!is_range_eof(range));
1999
3.39k
    using string_type = std::basic_string<detail::char_t<Range>>;
2000
2001
3.39k
    auto it = range.begin();
2002
3.39k
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
2003
2004
3.39k
    if (SCN_UNLIKELY(len == 0)) {
2005
0
        ++it;
2006
0
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
2007
0
        return {it, {}};
2008
0
    }
2009
2010
3.39k
    if (len == 1) {
2011
2.58k
        ++it;
2012
2.58k
        return {it, string_type(1, *range.begin())};
2013
2.58k
    }
2014
2015
806
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
2016
806
    return {it, string_type{range.begin(), it}};
2017
3.39k
}
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_27read_code_point_into_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISF_EEE4typeEEESF_
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISI_EEE4typeEEESI_
_ZN3scn2v44impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENSC_ISE_E8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISP_EEE4typeEEESP_
Line
Count
Source
1997
1.30k
{
1998
1.30k
    SCN_EXPECT(!is_range_eof(range));
1999
1.30k
    using string_type = std::basic_string<detail::char_t<Range>>;
2000
2001
1.30k
    auto it = range.begin();
2002
1.30k
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
2003
2004
1.30k
    if (SCN_UNLIKELY(len == 0)) {
2005
0
        ++it;
2006
0
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
2007
0
        return {it, {}};
2008
0
    }
2009
2010
1.30k
    if (len == 1) {
2011
1.30k
        ++it;
2012
1.30k
        return {it, string_type(1, *range.begin())};
2013
1.30k
    }
2014
2015
0
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
2016
0
    return {it, string_type{range.begin(), it}};
2017
1.30k
}
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_27read_code_point_into_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISF_EEE4typeEEESF_
Unexecuted instantiation: _ZN3scn2v44impl20read_code_point_intoINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISI_EEE4typeEEESI_
2018
2019
template <typename Range>
2020
auto read_code_point(Range range) -> ranges::const_iterator_t<Range>
2021
{
2022
    return read_code_point_into(range).iterator;
2023
}
2024
2025
template <typename Range>
2026
auto read_exactly_n_code_points(Range range, std::ptrdiff_t count)
2027
    -> eof_expected<ranges::const_iterator_t<Range>>
2028
{
2029
    SCN_EXPECT(count >= 0);
2030
2031
    if (count > 0) {
2032
        if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
2033
            return unexpected(e);
2034
        }
2035
    }
2036
2037
    auto it = range.begin();
2038
    for (std::ptrdiff_t i = 0; i < count; ++i) {
2039
        auto rng = ranges::subrange{it, range.end()};
2040
2041
        if (auto e = eof_check(rng); SCN_UNLIKELY(!e)) {
2042
            return unexpected(e);
2043
        }
2044
2045
        it = read_code_point(rng);
2046
    }
2047
2048
    return it;
2049
}
2050
2051
template <typename Range>
2052
auto read_until_code_unit(Range range,
2053
                          function_ref<bool(detail::char_t<Range>)> pred)
2054
    -> ranges::const_iterator_t<Range>
2055
6.00k
{
2056
6.00k
    if constexpr (ranges::common_range<Range>) {
2057
1.96k
        return std::find_if(range.begin(), range.end(), pred);
2058
    }
2059
4.04k
    else {
2060
4.04k
        auto first = range.begin();
2061
15.7k
        for (; first != range.end(); ++first) {
2062
15.1k
            if (pred(*first)) {
2063
3.44k
                return first;
2064
3.44k
            }
2065
15.1k
        }
2066
596
        return first;
2067
4.04k
    }
2068
6.00k
}
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbNDTcl4implISH_EEE4typeEENS1_12fnref_detail11qual_fn_sigISP_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbNDTcl4implISI_EEE4typeEENS1_12fnref_detail11qual_fn_sigISQ_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_NS1_12function_refIFbNDTcl4implISN_EEE4typeEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbNDTcl4implISD_EEE4typeEENS1_12fnref_detail11qual_fn_sigISL_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_NS1_12function_refIFbNDTcl4implISA_EEE4typeEENS1_12fnref_detail11qual_fn_sigISI_E8functionEEE
_ZN3scn2v44impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NS1_12function_refIFbNDTcl4implISK_EEE4typeEENS1_12fnref_detail11qual_fn_sigISS_E8functionEEE
Line
Count
Source
2055
1.37k
{
2056
    if constexpr (ranges::common_range<Range>) {
2057
        return std::find_if(range.begin(), range.end(), pred);
2058
    }
2059
1.37k
    else {
2060
1.37k
        auto first = range.begin();
2061
1.37k
        for (; first != range.end(); ++first) {
2062
1.37k
            if (pred(*first)) {
2063
1.37k
                return first;
2064
1.37k
            }
2065
1.37k
        }
2066
0
        return first;
2067
1.37k
    }
2068
1.37k
}
_ZN3scn2v44impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Line
Count
Source
2055
736
{
2056
736
    if constexpr (ranges::common_range<Range>) {
2057
736
        return std::find_if(range.begin(), range.end(), pred);
2058
    }
2059
    else {
2060
        auto first = range.begin();
2061
        for (; first != range.end(); ++first) {
2062
            if (pred(*first)) {
2063
                return first;
2064
            }
2065
        }
2066
        return first;
2067
    }
2068
736
}
_ZN3scn2v44impl20read_until_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbNDTcl4implISE_EEE4typeEENS1_12fnref_detail11qual_fn_sigISM_E8functionEEE
Line
Count
Source
2055
572
{
2056
    if constexpr (ranges::common_range<Range>) {
2057
        return std::find_if(range.begin(), range.end(), pred);
2058
    }
2059
572
    else {
2060
572
        auto first = range.begin();
2061
9.68k
        for (; first != range.end(); ++first) {
2062
9.35k
            if (pred(*first)) {
2063
244
                return first;
2064
244
            }
2065
9.35k
        }
2066
328
        return first;
2067
572
    }
2068
572
}
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbNDTcl4implISH_EEE4typeEENS1_12fnref_detail11qual_fn_sigISP_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbNDTcl4implISI_EEE4typeEENS1_12fnref_detail11qual_fn_sigISQ_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_NS1_12function_refIFbNDTcl4implISN_EEE4typeEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbNDTcl4implISD_EEE4typeEENS1_12fnref_detail11qual_fn_sigISL_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_until_code_unitINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_NS1_12function_refIFbNDTcl4implISA_EEE4typeEENS1_12fnref_detail11qual_fn_sigISI_E8functionEEE
_ZN3scn2v44impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NS1_12function_refIFbNDTcl4implISK_EEE4typeEENS1_12fnref_detail11qual_fn_sigISS_E8functionEEE
Line
Count
Source
2055
772
{
2056
    if constexpr (ranges::common_range<Range>) {
2057
        return std::find_if(range.begin(), range.end(), pred);
2058
    }
2059
772
    else {
2060
772
        auto first = range.begin();
2061
864
        for (; first != range.end(); ++first) {
2062
796
            if (pred(*first)) {
2063
704
                return first;
2064
704
            }
2065
796
        }
2066
68
        return first;
2067
772
    }
2068
772
}
_ZN3scn2v44impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Line
Count
Source
2055
1.22k
{
2056
1.22k
    if constexpr (ranges::common_range<Range>) {
2057
1.22k
        return std::find_if(range.begin(), range.end(), pred);
2058
    }
2059
    else {
2060
        auto first = range.begin();
2061
        for (; first != range.end(); ++first) {
2062
            if (pred(*first)) {
2063
                return first;
2064
            }
2065
        }
2066
        return first;
2067
    }
2068
1.22k
}
_ZN3scn2v44impl20read_until_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbNDTcl4implISE_EEE4typeEENS1_12fnref_detail11qual_fn_sigISM_E8functionEEE
Line
Count
Source
2055
390
{
2056
    if constexpr (ranges::common_range<Range>) {
2057
        return std::find_if(range.begin(), range.end(), pred);
2058
    }
2059
390
    else {
2060
390
        auto first = range.begin();
2061
2.30k
        for (; first != range.end(); ++first) {
2062
2.17k
            if (pred(*first)) {
2063
260
                return first;
2064
260
            }
2065
2.17k
        }
2066
130
        return first;
2067
390
    }
2068
390
}
_ZN3scn2v44impl20read_until_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Line
Count
Source
2055
472
{
2056
    if constexpr (ranges::common_range<Range>) {
2057
        return std::find_if(range.begin(), range.end(), pred);
2058
    }
2059
472
    else {
2060
472
        auto first = range.begin();
2061
724
        for (; first != range.end(); ++first) {
2062
688
            if (pred(*first)) {
2063
436
                return first;
2064
436
            }
2065
688
        }
2066
36
        return first;
2067
472
    }
2068
472
}
_ZN3scn2v44impl20read_until_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Line
Count
Source
2055
460
{
2056
    if constexpr (ranges::common_range<Range>) {
2057
        return std::find_if(range.begin(), range.end(), pred);
2058
    }
2059
460
    else {
2060
460
        auto first = range.begin();
2061
818
        for (; first != range.end(); ++first) {
2062
784
            if (pred(*first)) {
2063
426
                return first;
2064
426
            }
2065
784
        }
2066
34
        return first;
2067
460
    }
2068
460
}
2069
2070
template <typename Range>
2071
auto read_while_code_unit(Range range,
2072
                          function_ref<bool(detail::char_t<Range>)> pred)
2073
    -> ranges::const_iterator_t<Range>
2074
5.21k
{
2075
5.21k
    return read_until_code_unit(range, std::not_fn(pred));
2076
5.21k
}
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbNDTcl4implISH_EEE4typeEENS1_12fnref_detail11qual_fn_sigISP_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbNDTcl4implISI_EEE4typeEENS1_12fnref_detail11qual_fn_sigISQ_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_NS1_12function_refIFbNDTcl4implISN_EEE4typeEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbNDTcl4implISD_EEE4typeEENS1_12fnref_detail11qual_fn_sigISL_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_NS1_12function_refIFbNDTcl4implISA_EEE4typeEENS1_12fnref_detail11qual_fn_sigISI_E8functionEEE
_ZN3scn2v44impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NS1_12function_refIFbNDTcl4implISK_EEE4typeEENS1_12fnref_detail11qual_fn_sigISS_E8functionEEE
Line
Count
Source
2074
1.37k
{
2075
1.37k
    return read_until_code_unit(range, std::not_fn(pred));
2076
1.37k
}
_ZN3scn2v44impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Line
Count
Source
2074
544
{
2075
544
    return read_until_code_unit(range, std::not_fn(pred));
2076
544
}
_ZN3scn2v44impl20read_while_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbNDTcl4implISE_EEE4typeEENS1_12fnref_detail11qual_fn_sigISM_E8functionEEE
Line
Count
Source
2074
278
{
2075
278
    return read_until_code_unit(range, std::not_fn(pred));
2076
278
}
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbNDTcl4implISH_EEE4typeEENS1_12fnref_detail11qual_fn_sigISP_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbNDTcl4implISI_EEE4typeEENS1_12fnref_detail11qual_fn_sigISQ_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_NS1_12function_refIFbNDTcl4implISN_EEE4typeEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbNDTcl4implISD_EEE4typeEENS1_12fnref_detail11qual_fn_sigISL_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_while_code_unitINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_NS1_12function_refIFbNDTcl4implISA_EEE4typeEENS1_12fnref_detail11qual_fn_sigISI_E8functionEEE
_ZN3scn2v44impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NS1_12function_refIFbNDTcl4implISK_EEE4typeEENS1_12fnref_detail11qual_fn_sigISS_E8functionEEE
Line
Count
Source
2074
772
{
2075
772
    return read_until_code_unit(range, std::not_fn(pred));
2076
772
}
_ZN3scn2v44impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Line
Count
Source
2074
1.03k
{
2075
1.03k
    return read_until_code_unit(range, std::not_fn(pred));
2076
1.03k
}
_ZN3scn2v44impl20read_while_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbNDTcl4implISE_EEE4typeEENS1_12fnref_detail11qual_fn_sigISM_E8functionEEE
Line
Count
Source
2074
276
{
2075
276
    return read_until_code_unit(range, std::not_fn(pred));
2076
276
}
_ZN3scn2v44impl20read_while_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Line
Count
Source
2074
472
{
2075
472
    return read_until_code_unit(range, std::not_fn(pred));
2076
472
}
_ZN3scn2v44impl20read_while_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Line
Count
Source
2074
460
{
2075
460
    return read_until_code_unit(range, std::not_fn(pred));
2076
460
}
2077
2078
template <typename Range>
2079
auto read_until1_code_unit(Range range,
2080
                           function_ref<bool(detail::char_t<Range>)> pred)
2081
    -> parse_expected<ranges::const_iterator_t<Range>>
2082
{
2083
    auto it = read_until_code_unit(range, pred);
2084
    if (it == range.begin()) {
2085
        return unexpected(parse_error::error);
2086
    }
2087
    return it;
2088
}
2089
2090
template <typename Range>
2091
auto read_while1_code_unit(Range range,
2092
                           function_ref<bool(detail::char_t<Range>)> pred)
2093
    -> parse_expected<ranges::const_iterator_t<Range>>
2094
2.19k
{
2095
2.19k
    auto it = read_while_code_unit(range, pred);
2096
2.19k
    if (it == range.begin()) {
2097
2.10k
        return unexpected(parse_error::error);
2098
2.10k
    }
2099
98
    return it;
2100
2.19k
}
Unexecuted instantiation: _ZN3scn2v44impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS1_12function_refIFbNDTcl4implISO_EEE4typeEENS1_12fnref_detail11qual_fn_sigISX_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NS1_12function_refIFbNDTcl4implISG_EEE4typeEENS1_12fnref_detail11qual_fn_sigISP_E8functionEEE
_ZN3scn2v44impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS1_12function_refIFbNDTcl4implISL_EEE4typeEENS1_12fnref_detail11qual_fn_sigISU_E8functionEEE
Line
Count
Source
2094
1.37k
{
2095
1.37k
    auto it = read_while_code_unit(range, pred);
2096
1.37k
    if (it == range.begin()) {
2097
1.37k
        return unexpected(parse_error::error);
2098
1.37k
    }
2099
0
    return it;
2100
1.37k
}
_ZN3scn2v44impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NS1_12function_refIFbNDTcl4implISD_EEE4typeEENS1_12fnref_detail11qual_fn_sigISM_E8functionEEE
Line
Count
Source
2094
22
{
2095
22
    auto it = read_while_code_unit(range, pred);
2096
22
    if (it == range.begin()) {
2097
22
        return unexpected(parse_error::error);
2098
22
    }
2099
0
    return it;
2100
22
}
Unexecuted instantiation: _ZN3scn2v44impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS1_12function_refIFbNDTcl4implISO_EEE4typeEENS1_12fnref_detail11qual_fn_sigISX_E8functionEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NS1_12function_refIFbNDTcl4implISG_EEE4typeEENS1_12fnref_detail11qual_fn_sigISP_E8functionEEE
_ZN3scn2v44impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS1_12function_refIFbNDTcl4implISL_EEE4typeEENS1_12fnref_detail11qual_fn_sigISU_E8functionEEE
Line
Count
Source
2094
772
{
2095
772
    auto it = read_while_code_unit(range, pred);
2096
772
    if (it == range.begin()) {
2097
680
        return unexpected(parse_error::error);
2098
680
    }
2099
92
    return it;
2100
772
}
_ZN3scn2v44impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NS1_12function_refIFbNDTcl4implISD_EEE4typeEENS1_12fnref_detail11qual_fn_sigISM_E8functionEEE
Line
Count
Source
2094
28
{
2095
28
    auto it = read_while_code_unit(range, pred);
2096
28
    if (it == range.begin()) {
2097
22
        return unexpected(parse_error::error);
2098
22
    }
2099
6
    return it;
2100
28
}
2101
2102
template <typename Range, typename CodeUnits>
2103
auto read_until_code_units(Range range, const CodeUnits& needle)
2104
    -> ranges::const_iterator_t<Range>
2105
234
{
2106
234
    static_assert(ranges::common_range<CodeUnits>);
2107
2108
234
    if constexpr (ranges::common_range<Range>) {
2109
84
        return std::search(range.begin(), range.end(), needle.begin(),
2110
84
                           needle.end());
2111
    }
2112
150
    else {
2113
150
        auto first = range.begin();
2114
2.08k
        while (true) {
2115
2.08k
            auto it = first;
2116
2.50k
            for (auto needle_it = needle.begin();; ++it, (void)++needle_it) {
2117
2.50k
                if (needle_it == needle.end()) {
2118
108
                    return first;
2119
108
                }
2120
2.40k
                if (it == range.end()) {
2121
42
                    return it;
2122
42
                }
2123
2.35k
                if (*it != *needle_it) {
2124
1.93k
                    break;
2125
1.93k
                }
2126
2.35k
            }
2127
1.93k
            ++first;
2128
1.93k
        }
2129
150
    }
2130
234
}
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEESL_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_unitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESJ_RKT0_
_ZN3scn2v44impl21read_until_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEESI_RKT0_
Line
Count
Source
2105
150
{
2106
150
    static_assert(ranges::common_range<CodeUnits>);
2107
2108
    if constexpr (ranges::common_range<Range>) {
2109
        return std::search(range.begin(), range.end(), needle.begin(),
2110
                           needle.end());
2111
    }
2112
150
    else {
2113
150
        auto first = range.begin();
2114
2.08k
        while (true) {
2115
2.08k
            auto it = first;
2116
2.50k
            for (auto needle_it = needle.begin();; ++it, (void)++needle_it) {
2117
2.50k
                if (needle_it == needle.end()) {
2118
108
                    return first;
2119
108
                }
2120
2.40k
                if (it == range.end()) {
2121
42
                    return it;
2122
42
                }
2123
2.35k
                if (*it != *needle_it) {
2124
1.93k
                    break;
2125
1.93k
                }
2126
2.35k
            }
2127
1.93k
            ++first;
2128
1.93k
        }
2129
150
    }
2130
150
}
_ZN3scn2v44impl21read_until_code_unitsINS0_6ranges6detail9subrange_8subrangeIPKcS8_EENSt3__117basic_string_viewIcNSA_11char_traitsIcEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEESG_RKT0_
Line
Count
Source
2105
84
{
2106
84
    static_assert(ranges::common_range<CodeUnits>);
2107
2108
84
    if constexpr (ranges::common_range<Range>) {
2109
84
        return std::search(range.begin(), range.end(), needle.begin(),
2110
84
                           needle.end());
2111
    }
2112
    else {
2113
        auto first = range.begin();
2114
        while (true) {
2115
            auto it = first;
2116
            for (auto needle_it = needle.begin();; ++it, (void)++needle_it) {
2117
                if (needle_it == needle.end()) {
2118
                    return first;
2119
                }
2120
                if (it == range.end()) {
2121
                    return it;
2122
                }
2123
                if (*it != *needle_it) {
2124
                    break;
2125
                }
2126
            }
2127
            ++first;
2128
        }
2129
    }
2130
84
}
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEESL_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_unitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESJ_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEESI_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_unitsINS0_6ranges6detail9subrange_8subrangeIPKwS8_EENSt3__117basic_string_viewIwNSA_11char_traitsIwEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEESG_RKT0_
2131
2132
template <typename Range, typename CodeUnits>
2133
auto read_while_code_units(Range range, const CodeUnits& needle)
2134
    -> ranges::const_iterator_t<Range>
2135
1.23k
{
2136
1.23k
    static_assert(ranges::common_range<CodeUnits>);
2137
2138
1.23k
    auto it = range.begin();
2139
1.78k
    while (it != range.end()) {
2140
1.69k
        auto r = read_exactly_n_code_units(ranges::subrange{it, range.end()},
2141
1.69k
                                           needle.size());
2142
1.69k
        if (!r) {
2143
182
            return it;
2144
182
        }
2145
1.51k
        static_assert(
2146
1.51k
            std::is_same_v<decltype(it), detail::remove_cvref_t<decltype(*r)>>);
2147
1.51k
        if (!std::equal(it, *r, needle.begin())) {
2148
962
            return it;
2149
962
        }
2150
550
        it = *r;
2151
550
    }
2152
92
    SCN_ENSURE(it == range.end());
2153
92
    return it;
2154
92
}
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEESL_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENSt3__117basic_string_viewIcNSG_11char_traitsIcEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSG_9add_constIT_E4typeEEEEESM_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESJ_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEES8_EEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEES8_EEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEES7_EEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_RKT0_
_ZN3scn2v44impl21read_while_code_unitsINS0_6ranges6detail9subrange_8subrangeIPKcS8_EENSt3__117basic_string_viewIcNSA_11char_traitsIcEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEESG_RKT0_
Line
Count
Source
2135
258
{
2136
258
    static_assert(ranges::common_range<CodeUnits>);
2137
2138
258
    auto it = range.begin();
2139
400
    while (it != range.end()) {
2140
400
        auto r = read_exactly_n_code_units(ranges::subrange{it, range.end()},
2141
400
                                           needle.size());
2142
400
        if (!r) {
2143
6
            return it;
2144
6
        }
2145
394
        static_assert(
2146
394
            std::is_same_v<decltype(it), detail::remove_cvref_t<decltype(*r)>>);
2147
394
        if (!std::equal(it, *r, needle.begin())) {
2148
252
            return it;
2149
252
        }
2150
142
        it = *r;
2151
142
    }
2152
0
    SCN_ENSURE(it == range.end());
2153
0
    return it;
2154
0
}
_ZN3scn2v44impl21read_while_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEESI_RKT0_
Line
Count
Source
2135
320
{
2136
320
    static_assert(ranges::common_range<CodeUnits>);
2137
2138
320
    auto it = range.begin();
2139
542
    while (it != range.end()) {
2140
484
        auto r = read_exactly_n_code_units(ranges::subrange{it, range.end()},
2141
484
                                           needle.size());
2142
484
        if (!r) {
2143
68
            return it;
2144
68
        }
2145
416
        static_assert(
2146
416
            std::is_same_v<decltype(it), detail::remove_cvref_t<decltype(*r)>>);
2147
416
        if (!std::equal(it, *r, needle.begin())) {
2148
194
            return it;
2149
194
        }
2150
222
        it = *r;
2151
222
    }
2152
58
    SCN_ENSURE(it == range.end());
2153
58
    return it;
2154
58
}
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEESL_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENSt3__117basic_string_viewIwNSG_11char_traitsIwEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSG_9add_constIT_E4typeEEEEESM_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESJ_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEES8_EEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEES8_EEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEES7_EEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINS0_6ranges6detail9subrange_8subrangeIPKwS8_EENSt3__117basic_string_viewIwNSA_11char_traitsIwEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEESG_RKT0_
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEESI_RKT0_
_ZN3scn2v44impl21read_while_code_unitsINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESJ_RKT0_
Line
Count
Source
2135
658
{
2136
658
    static_assert(ranges::common_range<CodeUnits>);
2137
2138
658
    auto it = range.begin();
2139
844
    while (it != range.end()) {
2140
810
        auto r = read_exactly_n_code_units(ranges::subrange{it, range.end()},
2141
810
                                           needle.size());
2142
810
        if (!r) {
2143
108
            return it;
2144
108
        }
2145
702
        static_assert(
2146
702
            std::is_same_v<decltype(it), detail::remove_cvref_t<decltype(*r)>>);
2147
702
        if (!std::equal(it, *r, needle.begin())) {
2148
516
            return it;
2149
516
        }
2150
186
        it = *r;
2151
186
    }
2152
34
    SCN_ENSURE(it == range.end());
2153
34
    return it;
2154
34
}
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_unitsINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESJ_RKT0_
2155
2156
template <typename Range>
2157
auto read_until_code_point(Range range, function_ref<bool(char32_t)> pred)
2158
    -> ranges::const_iterator_t<Range>
2159
28.5k
{
2160
28.5k
    auto it = range.begin();
2161
420k
    while (it != range.end()) {
2162
411k
        const auto val =
2163
411k
            read_code_point_into(ranges::subrange{it, range.end()});
2164
411k
        if (SCN_LIKELY(val.is_valid())) {
2165
407k
            const auto cp = detail::decode_code_point_exhaustive(
2166
407k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2167
407k
            if (pred(cp)) {
2168
19.9k
                return it;
2169
19.9k
            }
2170
407k
        }
2171
391k
        it = val.iterator;
2172
391k
    }
2173
2174
8.52k
    return it;
2175
28.5k
}
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbDiESO_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbDiESN_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_pointINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbDiESJ_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_pointINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
_ZN3scn2v44impl21read_until_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbDiESK_EE
Line
Count
Source
2159
1.00k
{
2160
1.00k
    auto it = range.begin();
2161
15.3k
    while (it != range.end()) {
2162
14.9k
        const auto val =
2163
14.9k
            read_code_point_into(ranges::subrange{it, range.end()});
2164
14.9k
        if (SCN_LIKELY(val.is_valid())) {
2165
13.6k
            const auto cp = detail::decode_code_point_exhaustive(
2166
13.6k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2167
13.6k
            if (pred(cp)) {
2168
606
                return it;
2169
606
            }
2170
13.6k
        }
2171
14.3k
        it = val.iterator;
2172
14.3k
    }
2173
2174
402
    return it;
2175
1.00k
}
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_NS1_12function_refIFbDiEST_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
_ZN3scn2v44impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NS1_12function_refIFbDiESQ_EE
Line
Count
Source
2159
948
{
2160
948
    auto it = range.begin();
2161
13.9k
    while (it != range.end()) {
2162
13.2k
        const auto val =
2163
13.2k
            read_code_point_into(ranges::subrange{it, range.end()});
2164
13.2k
        if (SCN_LIKELY(val.is_valid())) {
2165
11.5k
            const auto cp = detail::decode_code_point_exhaustive(
2166
11.5k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2167
11.5k
            if (pred(cp)) {
2168
240
                return it;
2169
240
            }
2170
11.5k
        }
2171
12.9k
        it = val.iterator;
2172
12.9k
    }
2173
2174
708
    return it;
2175
948
}
_ZN3scn2v44impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
Line
Count
Source
2159
2.38k
{
2160
2.38k
    auto it = range.begin();
2161
317k
    while (it != range.end()) {
2162
317k
        const auto val =
2163
317k
            read_code_point_into(ranges::subrange{it, range.end()});
2164
317k
        if (SCN_LIKELY(val.is_valid())) {
2165
316k
            const auto cp = detail::decode_code_point_exhaustive(
2166
316k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2167
316k
            if (pred(cp)) {
2168
2.23k
                return it;
2169
2.23k
            }
2170
316k
        }
2171
315k
        it = val.iterator;
2172
315k
    }
2173
2174
150
    return it;
2175
2.38k
}
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbDiESO_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbDiESN_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_pointINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbDiESJ_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_pointINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
_ZN3scn2v44impl21read_until_code_pointINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_NS1_12function_refIFbDiESG_EE
Line
Count
Source
2159
4.99k
{
2160
4.99k
    auto it = range.begin();
2161
7.63k
    while (it != range.end()) {
2162
4.09k
        const auto val =
2163
4.09k
            read_code_point_into(ranges::subrange{it, range.end()});
2164
4.09k
        if (SCN_LIKELY(val.is_valid())) {
2165
4.09k
            const auto cp = detail::decode_code_point_exhaustive(
2166
4.09k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2167
4.09k
            if (pred(cp)) {
2168
1.45k
                return it;
2169
1.45k
            }
2170
4.09k
        }
2171
2.64k
        it = val.iterator;
2172
2.64k
    }
2173
2174
3.53k
    return it;
2175
4.99k
}
_ZN3scn2v44impl21read_until_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbDiESK_EE
Line
Count
Source
2159
666
{
2160
666
    auto it = range.begin();
2161
4.83k
    while (it != range.end()) {
2162
4.69k
        const auto val =
2163
4.69k
            read_code_point_into(ranges::subrange{it, range.end()});
2164
4.69k
        if (SCN_LIKELY(val.is_valid())) {
2165
4.69k
            const auto cp = detail::decode_code_point_exhaustive(
2166
4.69k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2167
4.69k
            if (pred(cp)) {
2168
532
                return it;
2169
532
            }
2170
4.69k
        }
2171
4.16k
        it = val.iterator;
2172
4.16k
    }
2173
2174
134
    return it;
2175
666
}
_ZN3scn2v44impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
Line
Count
Source
2159
14.5k
{
2160
14.5k
    auto it = range.begin();
2161
47.8k
    while (it != range.end()) {
2162
44.9k
        const auto val =
2163
44.9k
            read_code_point_into(ranges::subrange{it, range.end()});
2164
44.9k
        if (SCN_LIKELY(val.is_valid())) {
2165
44.9k
            const auto cp = detail::decode_code_point_exhaustive(
2166
44.9k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2167
44.9k
            if (pred(cp)) {
2168
11.6k
                return it;
2169
11.6k
            }
2170
44.9k
        }
2171
33.2k
        it = val.iterator;
2172
33.2k
    }
2173
2174
2.89k
    return it;
2175
14.5k
}
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_NS1_12function_refIFbDiEST_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
_ZN3scn2v44impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NS1_12function_refIFbDiESQ_EE
Line
Count
Source
2159
474
{
2160
474
    auto it = range.begin();
2161
8.37k
    while (it != range.end()) {
2162
7.98k
        const auto val =
2163
7.98k
            read_code_point_into(ranges::subrange{it, range.end()});
2164
7.98k
        if (SCN_LIKELY(val.is_valid())) {
2165
7.98k
            const auto cp = detail::decode_code_point_exhaustive(
2166
7.98k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2167
7.98k
            if (pred(cp)) {
2168
84
                return it;
2169
84
            }
2170
7.98k
        }
2171
7.90k
        it = val.iterator;
2172
7.90k
    }
2173
2174
390
    return it;
2175
474
}
_ZN3scn2v44impl21read_until_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
Line
Count
Source
2159
2.28k
{
2160
2.28k
    auto it = range.begin();
2161
3.63k
    while (it != range.end()) {
2162
3.39k
        const auto val =
2163
3.39k
            read_code_point_into(ranges::subrange{it, range.end()});
2164
3.39k
        if (SCN_LIKELY(val.is_valid())) {
2165
3.39k
            const auto cp = detail::decode_code_point_exhaustive(
2166
3.39k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2167
3.39k
            if (pred(cp)) {
2168
2.04k
                return it;
2169
2.04k
            }
2170
3.39k
        }
2171
1.34k
        it = val.iterator;
2172
1.34k
    }
2173
2174
238
    return it;
2175
2.28k
}
_ZN3scn2v44impl21read_until_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
Line
Count
Source
2159
1.17k
{
2160
1.17k
    auto it = range.begin();
2161
1.36k
    while (it != range.end()) {
2162
1.30k
        const auto val =
2163
1.30k
            read_code_point_into(ranges::subrange{it, range.end()});
2164
1.30k
        if (SCN_LIKELY(val.is_valid())) {
2165
1.30k
            const auto cp = detail::decode_code_point_exhaustive(
2166
1.30k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2167
1.30k
            if (pred(cp)) {
2168
1.10k
                return it;
2169
1.10k
            }
2170
1.30k
        }
2171
198
        it = val.iterator;
2172
198
    }
2173
2174
68
    return it;
2175
1.17k
}
2176
2177
template <typename Range>
2178
auto read_while_code_point(Range range, function_ref<bool(char32_t)> pred)
2179
    -> ranges::const_iterator_t<Range>
2180
23.7k
{
2181
23.7k
    return read_until_code_point(range, std::not_fn(pred));
2182
23.7k
}
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbDiESO_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbDiESN_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_pointINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbDiESJ_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_pointINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
_ZN3scn2v44impl21read_while_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbDiESK_EE
Line
Count
Source
2180
762
{
2181
762
    return read_until_code_point(range, std::not_fn(pred));
2182
762
}
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_pointINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
_ZN3scn2v44impl21read_while_code_pointINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
Line
Count
Source
2180
2.17k
{
2181
2.17k
    return read_until_code_point(range, std::not_fn(pred));
2182
2.17k
}
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbDiESO_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbDiESN_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_pointINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbDiESJ_EE
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_pointINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
_ZN3scn2v44impl21read_while_code_pointINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_NS1_12function_refIFbDiESG_EE
Line
Count
Source
2180
4.99k
{
2181
4.99k
    return read_until_code_point(range, std::not_fn(pred));
2182
4.99k
}
_ZN3scn2v44impl21read_while_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbDiESK_EE
Line
Count
Source
2180
546
{
2181
546
    return read_until_code_point(range, std::not_fn(pred));
2182
546
}
_ZN3scn2v44impl21read_while_code_pointINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
Line
Count
Source
2180
11.8k
{
2181
11.8k
    return read_until_code_point(range, std::not_fn(pred));
2182
11.8k
}
Unexecuted instantiation: _ZN3scn2v44impl21read_while_code_pointINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
_ZN3scn2v44impl21read_while_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
Line
Count
Source
2180
2.28k
{
2181
2.28k
    return read_until_code_point(range, std::not_fn(pred));
2182
2.28k
}
_ZN3scn2v44impl21read_while_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
Line
Count
Source
2180
1.17k
{
2181
1.17k
    return read_until_code_point(range, std::not_fn(pred));
2182
1.17k
}
2183
2184
template <typename Range>
2185
auto read_until_classic_space(Range range) -> ranges::const_iterator_t<Range>
2186
6.80k
{
2187
    if constexpr (ranges::contiguous_range<Range> &&
2188
                  ranges::sized_range<Range> &&
2189
2.84k
                  std::is_same_v<detail::char_t<Range>, char>) {
2190
2.84k
        auto buf = make_contiguous_buffer(range);
2191
2.84k
        auto it = find_classic_space_narrow_fast(buf.view());
2192
2.84k
        return ranges::next(range.begin(),
2193
2.84k
                            ranges::distance(buf.view().begin(), it));
2194
    }
2195
3.96k
    else {
2196
3.96k
        auto it = range.begin();
2197
2198
3.96k
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2199
948
            auto seg = get_contiguous_beginning(range);
2200
948
            if (auto seg_it = find_classic_space_narrow_fast(seg);
2201
948
                seg_it != seg.end()) {
2202
0
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2203
0
            }
2204
948
            ranges::advance(it, seg.size());
2205
948
        }
2206
2207
0
        return read_until_code_point(
2208
3.96k
            ranges::subrange{it, range.end()},
2209
44.5k
            [](char32_t cp) noexcept { return detail::is_cp_space(cp); });
Unexecuted instantiation: _ZZN3scn2v44impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v44impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_ENKUlDiE_clEDi
_ZZN3scn2v44impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_ENKUlDiE_clEDi
Line
Count
Source
2209
11.5k
            [](char32_t cp) noexcept { return detail::is_cp_space(cp); });
Unexecuted instantiation: _ZZN3scn2v44impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v44impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_ENKUlDiE_clEDi
_ZZN3scn2v44impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_ENKUlDiE_clEDi
Line
Count
Source
2209
7.98k
            [](char32_t cp) noexcept { return detail::is_cp_space(cp); });
_ZZN3scn2v44impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_ENKUlDiE_clEDi
Line
Count
Source
2209
22.2k
            [](char32_t cp) noexcept { return detail::is_cp_space(cp); });
_ZZN3scn2v44impl24read_until_classic_spaceINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_ENKUlDiE_clEDi
Line
Count
Source
2209
2.75k
            [](char32_t cp) noexcept { return detail::is_cp_space(cp); });
2210
3.96k
    }
2211
6.80k
}
Unexecuted instantiation: _ZN3scn2v44impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_
Unexecuted instantiation: _ZN3scn2v44impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
_ZN3scn2v44impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_
Line
Count
Source
2186
948
{
2187
    if constexpr (ranges::contiguous_range<Range> &&
2188
                  ranges::sized_range<Range> &&
2189
                  std::is_same_v<detail::char_t<Range>, char>) {
2190
        auto buf = make_contiguous_buffer(range);
2191
        auto it = find_classic_space_narrow_fast(buf.view());
2192
        return ranges::next(range.begin(),
2193
                            ranges::distance(buf.view().begin(), it));
2194
    }
2195
948
    else {
2196
948
        auto it = range.begin();
2197
2198
948
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2199
948
            auto seg = get_contiguous_beginning(range);
2200
948
            if (auto seg_it = find_classic_space_narrow_fast(seg);
2201
948
                seg_it != seg.end()) {
2202
0
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2203
0
            }
2204
948
            ranges::advance(it, seg.size());
2205
948
        }
2206
2207
0
        return read_until_code_point(
2208
948
            ranges::subrange{it, range.end()},
2209
948
            [](char32_t cp) noexcept { return detail::is_cp_space(cp); });
2210
948
    }
2211
948
}
_ZN3scn2v44impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
2186
2.84k
{
2187
    if constexpr (ranges::contiguous_range<Range> &&
2188
                  ranges::sized_range<Range> &&
2189
2.84k
                  std::is_same_v<detail::char_t<Range>, char>) {
2190
2.84k
        auto buf = make_contiguous_buffer(range);
2191
2.84k
        auto it = find_classic_space_narrow_fast(buf.view());
2192
2.84k
        return ranges::next(range.begin(),
2193
2.84k
                            ranges::distance(buf.view().begin(), it));
2194
    }
2195
    else {
2196
        auto it = range.begin();
2197
2198
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2199
            auto seg = get_contiguous_beginning(range);
2200
            if (auto seg_it = find_classic_space_narrow_fast(seg);
2201
                seg_it != seg.end()) {
2202
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2203
            }
2204
            ranges::advance(it, seg.size());
2205
        }
2206
2207
        return read_until_code_point(
2208
            ranges::subrange{it, range.end()},
2209
            [](char32_t cp) noexcept { return detail::is_cp_space(cp); });
2210
    }
2211
2.84k
}
Unexecuted instantiation: _ZN3scn2v44impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_
Unexecuted instantiation: _ZN3scn2v44impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
_ZN3scn2v44impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_
Line
Count
Source
2186
474
{
2187
    if constexpr (ranges::contiguous_range<Range> &&
2188
                  ranges::sized_range<Range> &&
2189
                  std::is_same_v<detail::char_t<Range>, char>) {
2190
        auto buf = make_contiguous_buffer(range);
2191
        auto it = find_classic_space_narrow_fast(buf.view());
2192
        return ranges::next(range.begin(),
2193
                            ranges::distance(buf.view().begin(), it));
2194
    }
2195
474
    else {
2196
474
        auto it = range.begin();
2197
2198
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2199
            auto seg = get_contiguous_beginning(range);
2200
            if (auto seg_it = find_classic_space_narrow_fast(seg);
2201
                seg_it != seg.end()) {
2202
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2203
            }
2204
            ranges::advance(it, seg.size());
2205
        }
2206
2207
474
        return read_until_code_point(
2208
474
            ranges::subrange{it, range.end()},
2209
474
            [](char32_t cp) noexcept { return detail::is_cp_space(cp); });
2210
474
    }
2211
474
}
_ZN3scn2v44impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
2186
2.49k
{
2187
    if constexpr (ranges::contiguous_range<Range> &&
2188
                  ranges::sized_range<Range> &&
2189
                  std::is_same_v<detail::char_t<Range>, char>) {
2190
        auto buf = make_contiguous_buffer(range);
2191
        auto it = find_classic_space_narrow_fast(buf.view());
2192
        return ranges::next(range.begin(),
2193
                            ranges::distance(buf.view().begin(), it));
2194
    }
2195
2.49k
    else {
2196
2.49k
        auto it = range.begin();
2197
2198
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2199
            auto seg = get_contiguous_beginning(range);
2200
            if (auto seg_it = find_classic_space_narrow_fast(seg);
2201
                seg_it != seg.end()) {
2202
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2203
            }
2204
            ranges::advance(it, seg.size());
2205
        }
2206
2207
2.49k
        return read_until_code_point(
2208
2.49k
            ranges::subrange{it, range.end()},
2209
2.49k
            [](char32_t cp) noexcept { return detail::is_cp_space(cp); });
2210
2.49k
    }
2211
2.49k
}
Unexecuted instantiation: _ZN3scn2v44impl24read_until_classic_spaceINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_
_ZN3scn2v44impl24read_until_classic_spaceINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_
Line
Count
Source
2186
52
{
2187
    if constexpr (ranges::contiguous_range<Range> &&
2188
                  ranges::sized_range<Range> &&
2189
                  std::is_same_v<detail::char_t<Range>, char>) {
2190
        auto buf = make_contiguous_buffer(range);
2191
        auto it = find_classic_space_narrow_fast(buf.view());
2192
        return ranges::next(range.begin(),
2193
                            ranges::distance(buf.view().begin(), it));
2194
    }
2195
52
    else {
2196
52
        auto it = range.begin();
2197
2198
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2199
            auto seg = get_contiguous_beginning(range);
2200
            if (auto seg_it = find_classic_space_narrow_fast(seg);
2201
                seg_it != seg.end()) {
2202
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2203
            }
2204
            ranges::advance(it, seg.size());
2205
        }
2206
2207
52
        return read_until_code_point(
2208
52
            ranges::subrange{it, range.end()},
2209
52
            [](char32_t cp) noexcept { return detail::is_cp_space(cp); });
2210
52
    }
2211
52
}
2212
2213
template <typename Range>
2214
auto read_while_classic_space(Range range) -> ranges::const_iterator_t<Range>
2215
42.0k
{
2216
    if constexpr (ranges::contiguous_range<Range> &&
2217
                  ranges::sized_range<Range> &&
2218
21.0k
                  std::is_same_v<detail::char_t<Range>, char>) {
2219
21.0k
        auto buf = make_contiguous_buffer(range);
2220
21.0k
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2221
21.0k
        return ranges::next(range.begin(),
2222
21.0k
                            ranges::distance(buf.view().begin(), it));
2223
    }
2224
21.0k
    else {
2225
21.0k
        auto it = range.begin();
2226
2227
21.0k
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2228
2.81k
            auto seg = get_contiguous_beginning(range);
2229
2.81k
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2230
2.81k
                seg_it != seg.end()) {
2231
0
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2232
0
            }
2233
2.81k
            ranges::advance(it, seg.size());
2234
2.81k
        }
2235
2236
26.1k
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
26.1k
            return detail::is_cp_space(cp);
2238
26.1k
        });
Unexecuted instantiation: _ZZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_ENKUlDiE_clEDi
_ZZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_ENKUlDiE_clEDi
Line
Count
Source
2236
1.46k
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
1.46k
            return detail::is_cp_space(cp);
2238
1.46k
        });
Unexecuted instantiation: _ZZN3scn2v44impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_ENKUlDiE_clEDi
_ZZN3scn2v44impl24read_while_classic_spaceINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_ENKUlDiE_clEDi
Line
Count
Source
2236
4.09k
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
4.09k
            return detail::is_cp_space(cp);
2238
4.09k
        });
_ZZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_ENKUlDiE_clEDi
Line
Count
Source
2236
624
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
624
            return detail::is_cp_space(cp);
2238
624
        });
_ZZN3scn2v44impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_ENKUlDiE_clEDi
Line
Count
Source
2236
15.3k
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
15.3k
            return detail::is_cp_space(cp);
2238
15.3k
        });
Unexecuted instantiation: _ZZN3scn2v44impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_ENKUlDiE_clEDi
_ZZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_ENKUlDiE_clEDi
Line
Count
Source
2236
3.39k
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
3.39k
            return detail::is_cp_space(cp);
2238
3.39k
        });
_ZZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_ENKUlDiE_clEDi
Line
Count
Source
2236
1.30k
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
1.30k
            return detail::is_cp_space(cp);
2238
1.30k
        });
2239
21.0k
    }
2240
42.0k
}
Unexecuted instantiation: _ZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_
Unexecuted instantiation: _ZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_
Unexecuted instantiation: _ZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_
Unexecuted instantiation: _ZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_
_ZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_
Line
Count
Source
2215
534
{
2216
    if constexpr (ranges::contiguous_range<Range> &&
2217
                  ranges::sized_range<Range> &&
2218
                  std::is_same_v<detail::char_t<Range>, char>) {
2219
        auto buf = make_contiguous_buffer(range);
2220
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2221
        return ranges::next(range.begin(),
2222
                            ranges::distance(buf.view().begin(), it));
2223
    }
2224
534
    else {
2225
534
        auto it = range.begin();
2226
2227
534
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2228
534
            auto seg = get_contiguous_beginning(range);
2229
534
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2230
534
                seg_it != seg.end()) {
2231
0
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2232
0
            }
2233
534
            ranges::advance(it, seg.size());
2234
534
        }
2235
2236
0
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
534
            return detail::is_cp_space(cp);
2238
534
        });
2239
534
    }
2240
534
}
_ZN3scn2v44impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
2215
13.9k
{
2216
    if constexpr (ranges::contiguous_range<Range> &&
2217
                  ranges::sized_range<Range> &&
2218
13.9k
                  std::is_same_v<detail::char_t<Range>, char>) {
2219
13.9k
        auto buf = make_contiguous_buffer(range);
2220
13.9k
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2221
13.9k
        return ranges::next(range.begin(),
2222
13.9k
                            ranges::distance(buf.view().begin(), it));
2223
    }
2224
    else {
2225
        auto it = range.begin();
2226
2227
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2228
            auto seg = get_contiguous_beginning(range);
2229
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2230
                seg_it != seg.end()) {
2231
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2232
            }
2233
            ranges::advance(it, seg.size());
2234
        }
2235
2236
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
            return detail::is_cp_space(cp);
2238
        });
2239
    }
2240
13.9k
}
Unexecuted instantiation: _ZN3scn2v44impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
Unexecuted instantiation: _ZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_
Unexecuted instantiation: _ZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_
Unexecuted instantiation: _ZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_
Unexecuted instantiation: _ZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_
_ZN3scn2v44impl24read_while_classic_spaceINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_
Line
Count
Source
2215
4.99k
{
2216
    if constexpr (ranges::contiguous_range<Range> &&
2217
                  ranges::sized_range<Range> &&
2218
                  std::is_same_v<detail::char_t<Range>, char>) {
2219
        auto buf = make_contiguous_buffer(range);
2220
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2221
        return ranges::next(range.begin(),
2222
                            ranges::distance(buf.view().begin(), it));
2223
    }
2224
4.99k
    else {
2225
4.99k
        auto it = range.begin();
2226
2227
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2228
            auto seg = get_contiguous_beginning(range);
2229
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2230
                seg_it != seg.end()) {
2231
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2232
            }
2233
            ranges::advance(it, seg.size());
2234
        }
2235
2236
4.99k
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
4.99k
            return detail::is_cp_space(cp);
2238
4.99k
        });
2239
4.99k
    }
2240
4.99k
}
_ZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_
Line
Count
Source
2215
396
{
2216
    if constexpr (ranges::contiguous_range<Range> &&
2217
                  ranges::sized_range<Range> &&
2218
                  std::is_same_v<detail::char_t<Range>, char>) {
2219
        auto buf = make_contiguous_buffer(range);
2220
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2221
        return ranges::next(range.begin(),
2222
                            ranges::distance(buf.view().begin(), it));
2223
    }
2224
396
    else {
2225
396
        auto it = range.begin();
2226
2227
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2228
            auto seg = get_contiguous_beginning(range);
2229
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2230
                seg_it != seg.end()) {
2231
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2232
            }
2233
            ranges::advance(it, seg.size());
2234
        }
2235
2236
396
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
396
            return detail::is_cp_space(cp);
2238
396
        });
2239
396
    }
2240
396
}
_ZN3scn2v44impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
2215
11.6k
{
2216
    if constexpr (ranges::contiguous_range<Range> &&
2217
                  ranges::sized_range<Range> &&
2218
                  std::is_same_v<detail::char_t<Range>, char>) {
2219
        auto buf = make_contiguous_buffer(range);
2220
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2221
        return ranges::next(range.begin(),
2222
                            ranges::distance(buf.view().begin(), it));
2223
    }
2224
11.6k
    else {
2225
11.6k
        auto it = range.begin();
2226
2227
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2228
            auto seg = get_contiguous_beginning(range);
2229
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2230
                seg_it != seg.end()) {
2231
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2232
            }
2233
            ranges::advance(it, seg.size());
2234
        }
2235
2236
11.6k
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
11.6k
            return detail::is_cp_space(cp);
2238
11.6k
        });
2239
11.6k
    }
2240
11.6k
}
Unexecuted instantiation: _ZN3scn2v44impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
_ZN3scn2v44impl24read_while_classic_spaceINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_
Line
Count
Source
2215
7.06k
{
2216
    if constexpr (ranges::contiguous_range<Range> &&
2217
                  ranges::sized_range<Range> &&
2218
7.06k
                  std::is_same_v<detail::char_t<Range>, char>) {
2219
7.06k
        auto buf = make_contiguous_buffer(range);
2220
7.06k
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2221
7.06k
        return ranges::next(range.begin(),
2222
7.06k
                            ranges::distance(buf.view().begin(), it));
2223
    }
2224
    else {
2225
        auto it = range.begin();
2226
2227
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2228
            auto seg = get_contiguous_beginning(range);
2229
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2230
                seg_it != seg.end()) {
2231
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2232
            }
2233
            ranges::advance(it, seg.size());
2234
        }
2235
2236
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
            return detail::is_cp_space(cp);
2238
        });
2239
    }
2240
7.06k
}
_ZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
Line
Count
Source
2215
2.28k
{
2216
    if constexpr (ranges::contiguous_range<Range> &&
2217
                  ranges::sized_range<Range> &&
2218
                  std::is_same_v<detail::char_t<Range>, char>) {
2219
        auto buf = make_contiguous_buffer(range);
2220
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2221
        return ranges::next(range.begin(),
2222
                            ranges::distance(buf.view().begin(), it));
2223
    }
2224
2.28k
    else {
2225
2.28k
        auto it = range.begin();
2226
2227
2.28k
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2228
2.28k
            auto seg = get_contiguous_beginning(range);
2229
2.28k
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2230
2.28k
                seg_it != seg.end()) {
2231
0
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2232
0
            }
2233
2.28k
            ranges::advance(it, seg.size());
2234
2.28k
        }
2235
2236
0
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
2.28k
            return detail::is_cp_space(cp);
2238
2.28k
        });
2239
2.28k
    }
2240
2.28k
}
_ZN3scn2v44impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
Line
Count
Source
2215
1.17k
{
2216
    if constexpr (ranges::contiguous_range<Range> &&
2217
                  ranges::sized_range<Range> &&
2218
                  std::is_same_v<detail::char_t<Range>, char>) {
2219
        auto buf = make_contiguous_buffer(range);
2220
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2221
        return ranges::next(range.begin(),
2222
                            ranges::distance(buf.view().begin(), it));
2223
    }
2224
1.17k
    else {
2225
1.17k
        auto it = range.begin();
2226
2227
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2228
            auto seg = get_contiguous_beginning(range);
2229
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2230
                seg_it != seg.end()) {
2231
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2232
            }
2233
            ranges::advance(it, seg.size());
2234
        }
2235
2236
1.17k
        return read_while_code_point(range, [](char32_t cp) noexcept {
2237
1.17k
            return detail::is_cp_space(cp);
2238
1.17k
        });
2239
1.17k
    }
2240
1.17k
}
2241
2242
template <typename Range>
2243
auto read_matching_code_unit(Range range, detail::char_t<Range> ch)
2244
    -> parse_expected<ranges::const_iterator_t<Range>>
2245
4.86k
{
2246
4.86k
    auto it = read_code_unit(range);
2247
4.86k
    if (SCN_UNLIKELY(!it)) {
2248
16
        return unexpected(make_eof_parse_error(it.error()));
2249
16
    }
2250
2251
4.85k
    if (SCN_UNLIKELY(*range.begin() !=
2252
4.85k
                     static_cast<detail::char_t<Range>>(ch))) {
2253
4.75k
        return unexpected(parse_error::error);
2254
4.75k
    }
2255
2256
96
    return *it;
2257
4.85k
}
Unexecuted instantiation: _ZN3scn2v44impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NDTcl4implISO_EEE4typeE
Unexecuted instantiation: _ZN3scn2v44impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NDTcl4implISG_EEE4typeE
_ZN3scn2v44impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NDTcl4implISL_EEE4typeE
Line
Count
Source
2245
40
{
2246
40
    auto it = read_code_unit(range);
2247
40
    if (SCN_UNLIKELY(!it)) {
2248
0
        return unexpected(make_eof_parse_error(it.error()));
2249
0
    }
2250
2251
40
    if (SCN_UNLIKELY(*range.begin() !=
2252
40
                     static_cast<detail::char_t<Range>>(ch))) {
2253
40
        return unexpected(parse_error::error);
2254
40
    }
2255
2256
0
    return *it;
2257
40
}
_ZN3scn2v44impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NDTcl4implISD_EEE4typeE
Line
Count
Source
2245
1.85k
{
2246
1.85k
    auto it = read_code_unit(range);
2247
1.85k
    if (SCN_UNLIKELY(!it)) {
2248
0
        return unexpected(make_eof_parse_error(it.error()));
2249
0
    }
2250
2251
1.85k
    if (SCN_UNLIKELY(*range.begin() !=
2252
1.85k
                     static_cast<detail::char_t<Range>>(ch))) {
2253
1.85k
        return unexpected(parse_error::error);
2254
1.85k
    }
2255
2256
0
    return *it;
2257
1.85k
}
Unexecuted instantiation: _ZN3scn2v44impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NDTcl4implISO_EEE4typeE
Unexecuted instantiation: _ZN3scn2v44impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NDTcl4implISG_EEE4typeE
_ZN3scn2v44impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NDTcl4implISL_EEE4typeE
Line
Count
Source
2245
94
{
2246
94
    auto it = read_code_unit(range);
2247
94
    if (SCN_UNLIKELY(!it)) {
2248
16
        return unexpected(make_eof_parse_error(it.error()));
2249
16
    }
2250
2251
78
    if (SCN_UNLIKELY(*range.begin() !=
2252
78
                     static_cast<detail::char_t<Range>>(ch))) {
2253
60
        return unexpected(parse_error::error);
2254
60
    }
2255
2256
18
    return *it;
2257
78
}
_ZN3scn2v44impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NDTcl4implISD_EEE4typeE
Line
Count
Source
2245
1.78k
{
2246
1.78k
    auto it = read_code_unit(range);
2247
1.78k
    if (SCN_UNLIKELY(!it)) {
2248
0
        return unexpected(make_eof_parse_error(it.error()));
2249
0
    }
2250
2251
1.78k
    if (SCN_UNLIKELY(*range.begin() !=
2252
1.78k
                     static_cast<detail::char_t<Range>>(ch))) {
2253
1.74k
        return unexpected(parse_error::error);
2254
1.74k
    }
2255
2256
46
    return *it;
2257
1.78k
}
_ZN3scn2v44impl23read_matching_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NDTcl4implISF_EEE4typeE
Line
Count
Source
2245
704
{
2246
704
    auto it = read_code_unit(range);
2247
704
    if (SCN_UNLIKELY(!it)) {
2248
0
        return unexpected(make_eof_parse_error(it.error()));
2249
0
    }
2250
2251
704
    if (SCN_UNLIKELY(*range.begin() !=
2252
704
                     static_cast<detail::char_t<Range>>(ch))) {
2253
704
        return unexpected(parse_error::error);
2254
704
    }
2255
2256
0
    return *it;
2257
704
}
Unexecuted instantiation: _ZN3scn2v44impl23read_matching_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NDTcl4implISI_EEE4typeE
_ZN3scn2v44impl23read_matching_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NDTcl4implISF_EEE4typeE
Line
Count
Source
2245
384
{
2246
384
    auto it = read_code_unit(range);
2247
384
    if (SCN_UNLIKELY(!it)) {
2248
0
        return unexpected(make_eof_parse_error(it.error()));
2249
0
    }
2250
2251
384
    if (SCN_UNLIKELY(*range.begin() !=
2252
384
                     static_cast<detail::char_t<Range>>(ch))) {
2253
352
        return unexpected(parse_error::error);
2254
352
    }
2255
2256
32
    return *it;
2257
384
}
Unexecuted instantiation: _ZN3scn2v44impl23read_matching_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NDTcl4implISI_EEE4typeE
2258
2259
template <typename Range>
2260
auto read_matching_code_point(Range range, char32_t cp)
2261
    -> parse_expected<ranges::const_iterator_t<Range>>
2262
{
2263
    auto val = read_code_point_into(range);
2264
    if (!val.is_valid()) {
2265
        return unexpected(parse_error::error);
2266
    }
2267
    auto decoded_cp = decode_code_point_exhaustive(val.codepoint);
2268
    if (SCN_UNLIKELY(cp != decoded_cp)) {
2269
        return unexpected(parse_error::error);
2270
    }
2271
    return val.iterator;
2272
}
2273
2274
template <typename Range>
2275
auto read_matching_string(Range range,
2276
                          std::basic_string_view<detail::char_t<Range>> str)
2277
    -> parse_expected<ranges::const_iterator_t<Range>>
2278
96
{
2279
96
    SCN_TRY(it, read_exactly_n_code_units(
2280
60
                    range, static_cast<std::ptrdiff_t>(str.size()))
2281
60
                    .transform_error(make_eof_parse_error));
2282
2283
60
    auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2284
60
    if (SCN_UNLIKELY(sv.view() != str)) {
2285
60
        return unexpected(parse_error::error);
2286
60
    }
2287
0
    return it;
2288
60
}
_ZN3scn2v44impl20read_matching_stringINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewINDTcl4implISF_EEE4typeENSD_11char_traitsISN_EEEE
Line
Count
Source
2278
32
{
2279
32
    SCN_TRY(it, read_exactly_n_code_units(
2280
14
                    range, static_cast<std::ptrdiff_t>(str.size()))
2281
14
                    .transform_error(make_eof_parse_error));
2282
2283
14
    auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2284
14
    if (SCN_UNLIKELY(sv.view() != str)) {
2285
14
        return unexpected(parse_error::error);
2286
14
    }
2287
0
    return it;
2288
14
}
_ZN3scn2v44impl20read_matching_stringINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewINDTcl4implISD_EEE4typeENSB_11char_traitsISL_EEEE
Line
Count
Source
2278
20
{
2279
20
    SCN_TRY(it, read_exactly_n_code_units(
2280
18
                    range, static_cast<std::ptrdiff_t>(str.size()))
2281
18
                    .transform_error(make_eof_parse_error));
2282
2283
18
    auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2284
18
    if (SCN_UNLIKELY(sv.view() != str)) {
2285
18
        return unexpected(parse_error::error);
2286
18
    }
2287
0
    return it;
2288
18
}
Unexecuted instantiation: _ZN3scn2v44impl20read_matching_stringINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewINDTcl4implISI_EEE4typeENSG_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_matching_stringINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewINDTcl4implISG_EEE4typeENSE_11char_traitsISO_EEEE
_ZN3scn2v44impl20read_matching_stringINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewINDTcl4implISF_EEE4typeENSD_11char_traitsISN_EEEE
Line
Count
Source
2278
20
{
2279
20
    SCN_TRY(it, read_exactly_n_code_units(
2280
6
                    range, static_cast<std::ptrdiff_t>(str.size()))
2281
6
                    .transform_error(make_eof_parse_error));
2282
2283
6
    auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2284
6
    if (SCN_UNLIKELY(sv.view() != str)) {
2285
6
        return unexpected(parse_error::error);
2286
6
    }
2287
0
    return it;
2288
6
}
_ZN3scn2v44impl20read_matching_stringINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewINDTcl4implISD_EEE4typeENSB_11char_traitsISL_EEEE
Line
Count
Source
2278
24
{
2279
24
    SCN_TRY(it, read_exactly_n_code_units(
2280
22
                    range, static_cast<std::ptrdiff_t>(str.size()))
2281
22
                    .transform_error(make_eof_parse_error));
2282
2283
22
    auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2284
22
    if (SCN_UNLIKELY(sv.view() != str)) {
2285
22
        return unexpected(parse_error::error);
2286
22
    }
2287
0
    return it;
2288
22
}
Unexecuted instantiation: _ZN3scn2v44impl20read_matching_stringINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewINDTcl4implISI_EEE4typeENSG_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v44impl20read_matching_stringINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewINDTcl4implISG_EEE4typeENSE_11char_traitsISO_EEEE
2289
2290
template <typename Range>
2291
auto read_matching_string_classic(Range range, std::string_view str)
2292
    -> parse_expected<ranges::const_iterator_t<Range>>
2293
4.83k
{
2294
4.83k
    SCN_TRY(it, read_exactly_n_code_units(
2295
4.33k
                    range, static_cast<std::ptrdiff_t>(str.size()))
2296
4.33k
                    .transform_error(make_eof_parse_error));
2297
2298
4.33k
    if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2299
2.56k
        auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2300
2.56k
        if (SCN_UNLIKELY(sv.view() != str)) {
2301
2.56k
            return unexpected(parse_error::error);
2302
2.56k
        }
2303
0
        return it;
2304
    }
2305
1.76k
    else {
2306
1.76k
        auto range_it = range.begin();
2307
1.76k
        for (size_t i = 0; i < str.size(); ++i, (void)++range_it) {
2308
1.76k
            if (SCN_UNLIKELY(*range_it !=
2309
1.76k
                             static_cast<detail::char_t<Range>>(str[i]))) {
2310
1.76k
                return unexpected(parse_error::error);
2311
1.76k
            }
2312
1.76k
        }
2313
0
        return it;
2314
1.76k
    }
2315
4.33k
}
_ZN3scn2v44impl28read_matching_string_classicINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEE
Line
Count
Source
2293
2.01k
{
2294
2.01k
    SCN_TRY(it, read_exactly_n_code_units(
2295
1.91k
                    range, static_cast<std::ptrdiff_t>(str.size()))
2296
1.91k
                    .transform_error(make_eof_parse_error));
2297
2298
1.91k
    if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2299
1.91k
        auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2300
1.91k
        if (SCN_UNLIKELY(sv.view() != str)) {
2301
1.91k
            return unexpected(parse_error::error);
2302
1.91k
        }
2303
0
        return it;
2304
    }
2305
    else {
2306
        auto range_it = range.begin();
2307
        for (size_t i = 0; i < str.size(); ++i, (void)++range_it) {
2308
            if (SCN_UNLIKELY(*range_it !=
2309
                             static_cast<detail::char_t<Range>>(str[i]))) {
2310
                return unexpected(parse_error::error);
2311
            }
2312
        }
2313
        return it;
2314
    }
2315
1.91k
}
Unexecuted instantiation: _ZN3scn2v44impl28read_matching_string_classicINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEE
_ZN3scn2v44impl28read_matching_string_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEE
Line
Count
Source
2293
812
{
2294
812
    SCN_TRY(it, read_exactly_n_code_units(
2295
654
                    range, static_cast<std::ptrdiff_t>(str.size()))
2296
654
                    .transform_error(make_eof_parse_error));
2297
2298
654
    if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2299
654
        auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2300
654
        if (SCN_UNLIKELY(sv.view() != str)) {
2301
654
            return unexpected(parse_error::error);
2302
654
        }
2303
0
        return it;
2304
    }
2305
    else {
2306
        auto range_it = range.begin();
2307
        for (size_t i = 0; i < str.size(); ++i, (void)++range_it) {
2308
            if (SCN_UNLIKELY(*range_it !=
2309
                             static_cast<detail::char_t<Range>>(str[i]))) {
2310
                return unexpected(parse_error::error);
2311
            }
2312
        }
2313
        return it;
2314
    }
2315
654
}
Unexecuted instantiation: _ZN3scn2v44impl28read_matching_string_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEE
_ZN3scn2v44impl28read_matching_string_classicINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEE
Line
Count
Source
2293
1.69k
{
2294
1.69k
    SCN_TRY(it, read_exactly_n_code_units(
2295
1.54k
                    range, static_cast<std::ptrdiff_t>(str.size()))
2296
1.54k
                    .transform_error(make_eof_parse_error));
2297
2298
    if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2299
        auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2300
        if (SCN_UNLIKELY(sv.view() != str)) {
2301
            return unexpected(parse_error::error);
2302
        }
2303
        return it;
2304
    }
2305
1.54k
    else {
2306
1.54k
        auto range_it = range.begin();
2307
1.54k
        for (size_t i = 0; i < str.size(); ++i, (void)++range_it) {
2308
1.54k
            if (SCN_UNLIKELY(*range_it !=
2309
1.54k
                             static_cast<detail::char_t<Range>>(str[i]))) {
2310
1.54k
                return unexpected(parse_error::error);
2311
1.54k
            }
2312
1.54k
        }
2313
0
        return it;
2314
1.54k
    }
2315
1.54k
}
_ZN3scn2v44impl28read_matching_string_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEE
Line
Count
Source
2293
312
{
2294
312
    SCN_TRY(it, read_exactly_n_code_units(
2295
224
                    range, static_cast<std::ptrdiff_t>(str.size()))
2296
224
                    .transform_error(make_eof_parse_error));
2297
2298
    if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2299
        auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2300
        if (SCN_UNLIKELY(sv.view() != str)) {
2301
            return unexpected(parse_error::error);
2302
        }
2303
        return it;
2304
    }
2305
224
    else {
2306
224
        auto range_it = range.begin();
2307
224
        for (size_t i = 0; i < str.size(); ++i, (void)++range_it) {
2308
224
            if (SCN_UNLIKELY(*range_it !=
2309
224
                             static_cast<detail::char_t<Range>>(str[i]))) {
2310
224
                return unexpected(parse_error::error);
2311
224
            }
2312
224
        }
2313
0
        return it;
2314
224
    }
2315
224
}
Unexecuted instantiation: _ZN3scn2v44impl28read_matching_string_classicINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v44impl28read_matching_string_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEE
2316
2317
// Ripped from fast_float
2318
constexpr bool fast_streq_nocase(const char* a, const char* b, size_t len)
2319
3.66k
{
2320
3.66k
    unsigned char running_diff{0};
2321
12.8k
    for (size_t i = 0; i < len; ++i) {
2322
9.13k
        running_diff |= static_cast<unsigned char>(a[i] ^ b[i]);
2323
9.13k
    }
2324
3.66k
    return running_diff == 0 || running_diff == 32;
2325
3.66k
}
2326
2327
template <typename Range>
2328
auto read_matching_string_classic_nocase(Range range, std::string_view str)
2329
    -> parse_expected<ranges::const_iterator_t<Range>>
2330
9.77k
{
2331
9.77k
    using char_type = detail::char_t<Range>;
2332
2333
    if constexpr (ranges::contiguous_range<Range> &&
2334
3.67k
                  std::is_same_v<char_type, char>) {
2335
3.67k
        if (range.size() < str.size()) {
2336
8
            return unexpected(make_eof_parse_error(eof_error::eof));
2337
8
        }
2338
3.66k
        if (!fast_streq_nocase(range.data(), str.data(), str.size())) {
2339
3.66k
            return unexpected(parse_error::error);
2340
3.66k
        }
2341
0
        return ranges::next(range.begin(), str.size());
2342
    }
2343
6.10k
    else {
2344
6.10k
        auto ascii_tolower = [](char_type ch) -> char_type {
2345
5.82k
            if (ch < 'A' || ch > 'Z') {
2346
5.82k
                return ch;
2347
5.82k
            }
2348
0
            return static_cast<char_type>(ch +
2349
0
                                          static_cast<char_type>('a' - 'A'));
2350
5.82k
        };
Unexecuted instantiation: _ZZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NSM_17basic_string_viewIcNSM_11char_traitsIcEEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEEENKUlcE_clEc
_ZZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEENKUlcE_clEc
Line
Count
Source
2344
1.23k
        auto ascii_tolower = [](char_type ch) -> char_type {
2345
1.23k
            if (ch < 'A' || ch > 'Z') {
2346
1.23k
                return ch;
2347
1.23k
            }
2348
0
            return static_cast<char_type>(ch +
2349
0
                                          static_cast<char_type>('a' - 'A'));
2350
1.23k
        };
Unexecuted instantiation: _ZZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NSM_17basic_string_viewIcNSM_11char_traitsIcEEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEEENKUlwE_clEw
_ZZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEENKUlwE_clEw
Line
Count
Source
2344
712
        auto ascii_tolower = [](char_type ch) -> char_type {
2345
712
            if (ch < 'A' || ch > 'Z') {
2346
712
                return ch;
2347
712
            }
2348
0
            return static_cast<char_type>(ch +
2349
0
                                          static_cast<char_type>('a' - 'A'));
2350
712
        };
_ZZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEEENKUlwE_clEw
Line
Count
Source
2344
3.87k
        auto ascii_tolower = [](char_type ch) -> char_type {
2345
3.87k
            if (ch < 'A' || ch > 'Z') {
2346
3.87k
                return ch;
2347
3.87k
            }
2348
0
            return static_cast<char_type>(ch +
2349
0
                                          static_cast<char_type>('a' - 'A'));
2350
3.87k
        };
2351
2352
6.10k
        SCN_TRY(it, read_exactly_n_code_units(
2353
5.63k
                        range, static_cast<std::ptrdiff_t>(str.size()))
2354
5.63k
                        .transform_error(make_eof_parse_error));
2355
2356
5.63k
        if (SCN_UNLIKELY(!std::equal(
2357
5.63k
                range.begin(), it, str.begin(), [&](auto a, auto b) {
2358
5.63k
                    return ascii_tolower(a) ==
2359
5.63k
                           static_cast<detail::char_t<Range>>(b);
2360
5.63k
                }))) {
2361
5.63k
            return unexpected(parse_error::error);
2362
5.63k
        }
2363
2364
0
        return it;
2365
5.63k
    }
2366
9.77k
}
Unexecuted instantiation: _ZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NSM_17basic_string_viewIcNSM_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEE
_ZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEE
Line
Count
Source
2330
1.47k
{
2331
1.47k
    using char_type = detail::char_t<Range>;
2332
2333
    if constexpr (ranges::contiguous_range<Range> &&
2334
                  std::is_same_v<char_type, char>) {
2335
        if (range.size() < str.size()) {
2336
            return unexpected(make_eof_parse_error(eof_error::eof));
2337
        }
2338
        if (!fast_streq_nocase(range.data(), str.data(), str.size())) {
2339
            return unexpected(parse_error::error);
2340
        }
2341
        return ranges::next(range.begin(), str.size());
2342
    }
2343
1.47k
    else {
2344
1.47k
        auto ascii_tolower = [](char_type ch) -> char_type {
2345
1.47k
            if (ch < 'A' || ch > 'Z') {
2346
1.47k
                return ch;
2347
1.47k
            }
2348
1.47k
            return static_cast<char_type>(ch +
2349
1.47k
                                          static_cast<char_type>('a' - 'A'));
2350
1.47k
        };
2351
2352
1.47k
        SCN_TRY(it, read_exactly_n_code_units(
2353
1.23k
                        range, static_cast<std::ptrdiff_t>(str.size()))
2354
1.23k
                        .transform_error(make_eof_parse_error));
2355
2356
1.23k
        if (SCN_UNLIKELY(!std::equal(
2357
1.23k
                range.begin(), it, str.begin(), [&](auto a, auto b) {
2358
1.23k
                    return ascii_tolower(a) ==
2359
1.23k
                           static_cast<detail::char_t<Range>>(b);
2360
1.23k
                }))) {
2361
1.23k
            return unexpected(parse_error::error);
2362
1.23k
        }
2363
2364
0
        return it;
2365
1.23k
    }
2366
1.47k
}
_ZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEE
Line
Count
Source
2330
3.67k
{
2331
3.67k
    using char_type = detail::char_t<Range>;
2332
2333
    if constexpr (ranges::contiguous_range<Range> &&
2334
3.67k
                  std::is_same_v<char_type, char>) {
2335
3.67k
        if (range.size() < str.size()) {
2336
8
            return unexpected(make_eof_parse_error(eof_error::eof));
2337
8
        }
2338
3.66k
        if (!fast_streq_nocase(range.data(), str.data(), str.size())) {
2339
3.66k
            return unexpected(parse_error::error);
2340
3.66k
        }
2341
0
        return ranges::next(range.begin(), str.size());
2342
    }
2343
    else {
2344
        auto ascii_tolower = [](char_type ch) -> char_type {
2345
            if (ch < 'A' || ch > 'Z') {
2346
                return ch;
2347
            }
2348
            return static_cast<char_type>(ch +
2349
                                          static_cast<char_type>('a' - 'A'));
2350
        };
2351
2352
        SCN_TRY(it, read_exactly_n_code_units(
2353
                        range, static_cast<std::ptrdiff_t>(str.size()))
2354
                        .transform_error(make_eof_parse_error));
2355
2356
        if (SCN_UNLIKELY(!std::equal(
2357
                range.begin(), it, str.begin(), [&](auto a, auto b) {
2358
                    return ascii_tolower(a) ==
2359
                           static_cast<detail::char_t<Range>>(b);
2360
                }))) {
2361
            return unexpected(parse_error::error);
2362
        }
2363
2364
        return it;
2365
    }
2366
3.67k
}
Unexecuted instantiation: _ZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NSM_17basic_string_viewIcNSM_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEE
_ZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEE
Line
Count
Source
2330
884
{
2331
884
    using char_type = detail::char_t<Range>;
2332
2333
    if constexpr (ranges::contiguous_range<Range> &&
2334
                  std::is_same_v<char_type, char>) {
2335
        if (range.size() < str.size()) {
2336
            return unexpected(make_eof_parse_error(eof_error::eof));
2337
        }
2338
        if (!fast_streq_nocase(range.data(), str.data(), str.size())) {
2339
            return unexpected(parse_error::error);
2340
        }
2341
        return ranges::next(range.begin(), str.size());
2342
    }
2343
884
    else {
2344
884
        auto ascii_tolower = [](char_type ch) -> char_type {
2345
884
            if (ch < 'A' || ch > 'Z') {
2346
884
                return ch;
2347
884
            }
2348
884
            return static_cast<char_type>(ch +
2349
884
                                          static_cast<char_type>('a' - 'A'));
2350
884
        };
2351
2352
884
        SCN_TRY(it, read_exactly_n_code_units(
2353
668
                        range, static_cast<std::ptrdiff_t>(str.size()))
2354
668
                        .transform_error(make_eof_parse_error));
2355
2356
668
        if (SCN_UNLIKELY(!std::equal(
2357
668
                range.begin(), it, str.begin(), [&](auto a, auto b) {
2358
668
                    return ascii_tolower(a) ==
2359
668
                           static_cast<detail::char_t<Range>>(b);
2360
668
                }))) {
2361
668
            return unexpected(parse_error::error);
2362
668
        }
2363
2364
0
        return it;
2365
668
    }
2366
884
}
_ZN3scn2v44impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEE
Line
Count
Source
2330
3.74k
{
2331
3.74k
    using char_type = detail::char_t<Range>;
2332
2333
    if constexpr (ranges::contiguous_range<Range> &&
2334
                  std::is_same_v<char_type, char>) {
2335
        if (range.size() < str.size()) {
2336
            return unexpected(make_eof_parse_error(eof_error::eof));
2337
        }
2338
        if (!fast_streq_nocase(range.data(), str.data(), str.size())) {
2339
            return unexpected(parse_error::error);
2340
        }
2341
        return ranges::next(range.begin(), str.size());
2342
    }
2343
3.74k
    else {
2344
3.74k
        auto ascii_tolower = [](char_type ch) -> char_type {
2345
3.74k
            if (ch < 'A' || ch > 'Z') {
2346
3.74k
                return ch;
2347
3.74k
            }
2348
3.74k
            return static_cast<char_type>(ch +
2349
3.74k
                                          static_cast<char_type>('a' - 'A'));
2350
3.74k
        };
2351
2352
3.74k
        SCN_TRY(it, read_exactly_n_code_units(
2353
3.73k
                        range, static_cast<std::ptrdiff_t>(str.size()))
2354
3.73k
                        .transform_error(make_eof_parse_error));
2355
2356
3.73k
        if (SCN_UNLIKELY(!std::equal(
2357
3.73k
                range.begin(), it, str.begin(), [&](auto a, auto b) {
2358
3.73k
                    return ascii_tolower(a) ==
2359
3.73k
                           static_cast<detail::char_t<Range>>(b);
2360
3.73k
                }))) {
2361
3.73k
            return unexpected(parse_error::error);
2362
3.73k
        }
2363
2364
0
        return it;
2365
3.73k
    }
2366
3.74k
}
2367
2368
template <typename Range>
2369
auto read_one_of_code_unit(Range range, std::string_view str)
2370
    -> parse_expected<ranges::const_iterator_t<Range>>
2371
9.40k
{
2372
9.40k
    auto it = read_code_unit(range);
2373
9.40k
    if (SCN_UNLIKELY(!it)) {
2374
14
        return unexpected(make_eof_parse_error(it.error()));
2375
14
    }
2376
2377
18.7k
    for (auto ch : str) {
2378
18.7k
        if (*range.begin() == static_cast<detail::char_t<Range>>(ch)) {
2379
0
            return *it;
2380
0
        }
2381
18.7k
    }
2382
2383
9.38k
    return unexpected(parse_error::error);
2384
9.38k
}
Unexecuted instantiation: _ZN3scn2v44impl21read_one_of_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEE
_ZN3scn2v44impl21read_one_of_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEE
Line
Count
Source
2371
1.40k
{
2372
1.40k
    auto it = read_code_unit(range);
2373
1.40k
    if (SCN_UNLIKELY(!it)) {
2374
0
        return unexpected(make_eof_parse_error(it.error()));
2375
0
    }
2376
2377
2.80k
    for (auto ch : str) {
2378
2.80k
        if (*range.begin() == static_cast<detail::char_t<Range>>(ch)) {
2379
0
            return *it;
2380
0
        }
2381
2.80k
    }
2382
2383
1.40k
    return unexpected(parse_error::error);
2384
1.40k
}
_ZN3scn2v44impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEE
Line
Count
Source
2371
3.62k
{
2372
3.62k
    auto it = read_code_unit(range);
2373
3.62k
    if (SCN_UNLIKELY(!it)) {
2374
0
        return unexpected(make_eof_parse_error(it.error()));
2375
0
    }
2376
2377
7.24k
    for (auto ch : str) {
2378
7.24k
        if (*range.begin() == static_cast<detail::char_t<Range>>(ch)) {
2379
0
            return *it;
2380
0
        }
2381
7.24k
    }
2382
2383
3.62k
    return unexpected(parse_error::error);
2384
3.62k
}
Unexecuted instantiation: _ZN3scn2v44impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NSM_17basic_string_viewIcNSM_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_one_of_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEE
_ZN3scn2v44impl21read_one_of_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEE
Line
Count
Source
2371
806
{
2372
806
    auto it = read_code_unit(range);
2373
806
    if (SCN_UNLIKELY(!it)) {
2374
0
        return unexpected(make_eof_parse_error(it.error()));
2375
0
    }
2376
2377
1.61k
    for (auto ch : str) {
2378
1.61k
        if (*range.begin() == static_cast<detail::char_t<Range>>(ch)) {
2379
0
            return *it;
2380
0
        }
2381
1.61k
    }
2382
2383
806
    return unexpected(parse_error::error);
2384
806
}
_ZN3scn2v44impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEE
Line
Count
Source
2371
3.54k
{
2372
3.54k
    auto it = read_code_unit(range);
2373
3.54k
    if (SCN_UNLIKELY(!it)) {
2374
0
        return unexpected(make_eof_parse_error(it.error()));
2375
0
    }
2376
2377
7.08k
    for (auto ch : str) {
2378
7.08k
        if (*range.begin() == static_cast<detail::char_t<Range>>(ch)) {
2379
0
            return *it;
2380
0
        }
2381
7.08k
    }
2382
2383
3.54k
    return unexpected(parse_error::error);
2384
3.54k
}
Unexecuted instantiation: _ZN3scn2v44impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NSM_17basic_string_viewIcNSM_11char_traitsIcEEEE
_ZN3scn2v44impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEE
Line
Count
Source
2371
30
{
2372
30
    auto it = read_code_unit(range);
2373
30
    if (SCN_UNLIKELY(!it)) {
2374
14
        return unexpected(make_eof_parse_error(it.error()));
2375
14
    }
2376
2377
32
    for (auto ch : str) {
2378
32
        if (*range.begin() == static_cast<detail::char_t<Range>>(ch)) {
2379
0
            return *it;
2380
0
        }
2381
32
    }
2382
2383
16
    return unexpected(parse_error::error);
2384
16
}
2385
2386
template <typename Range, template <class> class Expected, typename Iterator>
2387
auto apply_opt(Expected<Iterator>&& result, Range range)
2388
    -> std::enable_if_t<detail::is_expected<Expected<Iterator>>::value,
2389
                        ranges::const_iterator_t<Range>>
2390
2.39k
{
2391
2.39k
    if (!result) {
2392
2.38k
        return range.begin();
2393
2.38k
    }
2394
12
    return *result;
2395
2.39k
}
Unexecuted instantiation: _ZN3scn2v44impl9apply_optINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENS1_14parse_expectedESE_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSM_9add_constIT_E4typeEEEEEE4typeEOSQ_SS_
Unexecuted instantiation: _ZN3scn2v44impl9apply_optINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_14parse_expectedESA_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEE4typeEOSI_SK_
_ZN3scn2v44impl9apply_optINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENS1_14parse_expectedESB_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSJ_9add_constIT_E4typeEEEEEE4typeEOSN_SP_
Line
Count
Source
2390
356
{
2391
356
    if (!result) {
2392
356
        return range.begin();
2393
356
    }
2394
0
    return *result;
2395
356
}
_ZN3scn2v44impl9apply_optINS0_6ranges6detail9subrange_8subrangeIPKcS8_EENS1_14parse_expectedES8_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSB_9add_constIT_E4typeEEEEEE4typeEOSF_SH_
Line
Count
Source
2390
922
{
2391
922
    if (!result) {
2392
922
        return range.begin();
2393
922
    }
2394
0
    return *result;
2395
922
}
Unexecuted instantiation: _ZN3scn2v44impl9apply_optINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENS1_14parse_expectedESE_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSM_9add_constIT_E4typeEEEEEE4typeEOSQ_SS_
Unexecuted instantiation: _ZN3scn2v44impl9apply_optINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_14parse_expectedESA_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEE4typeEOSI_SK_
_ZN3scn2v44impl9apply_optINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENS1_14parse_expectedESB_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSJ_9add_constIT_E4typeEEEEEE4typeEOSN_SP_
Line
Count
Source
2390
212
{
2391
212
    if (!result) {
2392
206
        return range.begin();
2393
206
    }
2394
6
    return *result;
2395
212
}
_ZN3scn2v44impl9apply_optINS0_6ranges6detail9subrange_8subrangeIPKwS8_EENS1_14parse_expectedES8_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSB_9add_constIT_E4typeEEEEEE4typeEOSF_SH_
Line
Count
Source
2390
908
{
2391
908
    if (!result) {
2392
902
        return range.begin();
2393
902
    }
2394
6
    return *result;
2395
908
}
2396
2397
/////////////////////////////////////////////////////////////////
2398
// Text width calculation
2399
/////////////////////////////////////////////////////////////////
2400
2401
constexpr std::size_t calculate_text_width_for_fmt_v10(char32_t cp)
2402
154k
{
2403
154k
    if (cp >= 0x1100 &&
2404
154k
        (cp <= 0x115f ||  // Hangul Jamo init. consonants
2405
33.4k
         cp == 0x2329 ||  // LEFT-POINTING ANGLE BRACKET
2406
33.4k
         cp == 0x232a ||  // RIGHT-POINTING ANGLE BRACKET
2407
         // CJK ... Yi except IDEOGRAPHIC HALF FILL SPACE:
2408
33.4k
         (cp >= 0x2e80 && cp <= 0xa4cf && cp != 0x303f) ||
2409
33.4k
         (cp >= 0xac00 && cp <= 0xd7a3) ||    // Hangul Syllables
2410
33.4k
         (cp >= 0xf900 && cp <= 0xfaff) ||    // CJK Compatibility Ideographs
2411
33.4k
         (cp >= 0xfe10 && cp <= 0xfe19) ||    // Vertical Forms
2412
33.4k
         (cp >= 0xfe30 && cp <= 0xfe6f) ||    // CJK Compatibility Forms
2413
33.4k
         (cp >= 0xff00 && cp <= 0xff60) ||    // Fullwidth Forms
2414
33.4k
         (cp >= 0xffe0 && cp <= 0xffe6) ||    // Fullwidth Forms
2415
33.4k
         (cp >= 0x20000 && cp <= 0x2fffd) ||  // CJK
2416
33.4k
         (cp >= 0x30000 && cp <= 0x3fffd) ||
2417
         // Miscellaneous Symbols and Pictographs + Emoticons:
2418
33.4k
         (cp >= 0x1f300 && cp <= 0x1f64f) ||
2419
         // Supplemental Symbols and Pictographs:
2420
33.4k
         (cp >= 0x1f900 && cp <= 0x1f9ff))) {
2421
4.08k
        return 2;
2422
4.08k
    }
2423
150k
    return 1;
2424
154k
}
2425
2426
constexpr std::size_t calculate_valid_text_width(char32_t cp)
2427
99.4k
{
2428
99.4k
    return calculate_text_width_for_fmt_v10(cp);
2429
99.4k
}
2430
2431
template <typename CharT>
2432
std::size_t calculate_valid_text_width(std::basic_string_view<CharT> input)
2433
{
2434
    size_t count{0};
2435
    for_each_code_point_valid(input, [&count](char32_t cp) {
2436
        count += calculate_text_width_for_fmt_v10(cp);
2437
    });
2438
    return count;
2439
}
2440
2441
constexpr std::size_t calculate_text_width(char32_t cp)
2442
238
{
2443
238
    return calculate_text_width_for_fmt_v10(cp);
2444
238
}
2445
2446
template <typename CharT>
2447
std::size_t calculate_text_width(std::basic_string_view<CharT> input)
2448
38.4k
{
2449
38.4k
    size_t count{0};
2450
55.0k
    for_each_code_point(input, [&count](char32_t cp) {
2451
55.0k
        count += calculate_text_width_for_fmt_v10(cp);
2452
55.0k
    });
scn::v4::impl::calculate_text_width<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >)::{lambda(char32_t)#1}::operator()(char32_t) const
Line
Count
Source
2450
46.8k
    for_each_code_point(input, [&count](char32_t cp) {
2451
46.8k
        count += calculate_text_width_for_fmt_v10(cp);
2452
46.8k
    });
scn::v4::impl::calculate_text_width<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)::{lambda(char32_t)#1}::operator()(char32_t) const
Line
Count
Source
2450
8.17k
    for_each_code_point(input, [&count](char32_t cp) {
2451
8.17k
        count += calculate_text_width_for_fmt_v10(cp);
2452
8.17k
    });
2453
38.4k
    return count;
2454
38.4k
}
unsigned long scn::v4::impl::calculate_text_width<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Line
Count
Source
2448
35.1k
{
2449
35.1k
    size_t count{0};
2450
35.1k
    for_each_code_point(input, [&count](char32_t cp) {
2451
35.1k
        count += calculate_text_width_for_fmt_v10(cp);
2452
35.1k
    });
2453
35.1k
    return count;
2454
35.1k
}
unsigned long scn::v4::impl::calculate_text_width<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)
Line
Count
Source
2448
3.28k
{
2449
3.28k
    size_t count{0};
2450
3.28k
    for_each_code_point(input, [&count](char32_t cp) {
2451
3.28k
        count += calculate_text_width_for_fmt_v10(cp);
2452
3.28k
    });
2453
3.28k
    return count;
2454
3.28k
}
2455
2456
namespace counted_width_iterator_impl {
2457
template <typename It, typename S>
2458
class counted_width_iterator {
2459
    static_assert(ranges::forward_iterator<It>);
2460
    static_assert(ranges::sentinel_for<S, It>);
2461
2462
    template <typename OtherIt, typename OtherS>
2463
    friend class counted_width_iterator;
2464
2465
public:
2466
    using iterator = It;
2467
    using sentinel = S;
2468
    using value_type = ranges::iter_value_t<It>;
2469
    using pointer = value_type*;
2470
    using reference = value_type&;
2471
    using difference_type = ranges::iter_difference_t<It>;
2472
    using iterator_category =
2473
        std::conditional_t<ranges::bidirectional_iterator<It>,
2474
                           std::bidirectional_iterator_tag,
2475
                           std::forward_iterator_tag>;
2476
2477
    constexpr counted_width_iterator() = default;
2478
2479
    constexpr counted_width_iterator(iterator x, sentinel s, difference_type n)
2480
47.2k
        : m_current(x), m_end(s), m_count(n)
2481
47.2k
    {
2482
47.2k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::counted_width_iterator(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>, long)
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>::counted_width_iterator(scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t, long)
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::counted_width_iterator(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>, long)
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::counted_width_iterator(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>, long)
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>::counted_width_iterator(scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t, long)
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::counted_width_iterator(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>, long)
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::counted_width_iterator(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>, long)
Line
Count
Source
2480
5.69k
        : m_current(x), m_end(s), m_count(n)
2481
5.69k
    {
2482
5.69k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::counted_width_iterator(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>, long)
Line
Count
Source
2480
2.80k
        : m_current(x), m_end(s), m_count(n)
2481
2.80k
    {
2482
2.80k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::counted_width_iterator(char const*, char const*, long)
Line
Count
Source
2480
25.5k
        : m_current(x), m_end(s), m_count(n)
2481
25.5k
    {
2482
25.5k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::counted_width_iterator(wchar_t const*, wchar_t const*, long)
Line
Count
Source
2480
13.1k
        : m_current(x), m_end(s), m_count(n)
2481
13.1k
    {
2482
13.1k
    }
2483
2484
    template <typename OtherIt,
2485
              typename OtherS,
2486
              std::enable_if_t<std::is_convertible_v<OtherIt, It> &&
2487
                               std::is_convertible_v<OtherS, S>>* = nullptr>
2488
    constexpr counted_width_iterator(
2489
        const counted_width_iterator<OtherIt, OtherS>& other)
2490
        : m_current(other.m_current),
2491
          m_end(other.m_end),
2492
          m_count(other.m_count),
2493
          m_multibyte_left(other.m_multibyte_left)
2494
    {
2495
    }
2496
2497
    template <typename OtherIt, typename OtherS>
2498
    constexpr auto operator=(
2499
        const counted_width_iterator<OtherIt, OtherS>& other)
2500
        -> std::enable_if_t<std::is_convertible_v<OtherIt, It> &&
2501
                                std::is_convertible_v<OtherS, S>,
2502
                            counted_width_iterator&>
2503
    {
2504
        m_current = other.m_current;
2505
        m_end = other.m_end;
2506
        m_count = other.m_count;
2507
        m_multibyte_left = other.m_multibyte_left;
2508
        return *this;
2509
    }
2510
2511
    constexpr It base() const
2512
220k
    {
2513
220k
        return m_current;
2514
220k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::base() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>::base() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::base() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::base() const
Line
Count
Source
2512
148k
    {
2513
148k
        return m_current;
2514
148k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::base() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>::base() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::base() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::base() const
Line
Count
Source
2512
48.1k
    {
2513
48.1k
        return m_current;
2514
48.1k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::base() const
Line
Count
Source
2512
18.1k
    {
2513
18.1k
        return m_current;
2514
18.1k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::base() const
Line
Count
Source
2512
6.04k
    {
2513
6.04k
        return m_current;
2514
6.04k
    }
2515
    constexpr difference_type count() const
2516
429k
    {
2517
429k
        return m_count;
2518
429k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::count() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>::count() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::count() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::count() const
Line
Count
Source
2516
290k
    {
2517
290k
        return m_count;
2518
290k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::count() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>::count() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::count() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::count() const
Line
Count
Source
2516
92.3k
    {
2517
92.3k
        return m_count;
2518
92.3k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::count() const
Line
Count
Source
2516
35.1k
    {
2517
35.1k
        return m_count;
2518
35.1k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::count() const
Line
Count
Source
2516
11.2k
    {
2517
11.2k
        return m_count;
2518
11.2k
    }
2519
    constexpr difference_type multibyte_left() const
2520
36.6k
    {
2521
36.6k
        return m_multibyte_left;
2522
36.6k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>::multibyte_left() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::multibyte_left() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::multibyte_left() const
Line
Count
Source
2520
28.8k
    {
2521
28.8k
        return m_multibyte_left;
2522
28.8k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::multibyte_left() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>::multibyte_left() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::multibyte_left() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::multibyte_left() const
Line
Count
Source
2520
3.86k
    {
2521
3.86k
        return m_multibyte_left;
2522
3.86k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::multibyte_left() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::multibyte_left() const
Line
Count
Source
2520
3.23k
    {
2521
3.23k
        return m_multibyte_left;
2522
3.23k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::multibyte_left() const
Line
Count
Source
2520
672
    {
2521
672
        return m_multibyte_left;
2522
672
    }
2523
2524
    bool is_current_double_wide() const
2525
13.4k
    {
2526
13.4k
        assert(count() != 0 || multibyte_left() != 0);
2527
13.4k
        return _get_width_at_current_cp_start(
2528
13.4k
                   _get_cp_length_at_current()) == 2;
2529
13.4k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>::is_current_double_wide() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::is_current_double_wide() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::is_current_double_wide() const
Line
Count
Source
2525
8.42k
    {
2526
8.42k
        assert(count() != 0 || multibyte_left() != 0);
2527
8.42k
        return _get_width_at_current_cp_start(
2528
8.42k
                   _get_cp_length_at_current()) == 2;
2529
8.42k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::is_current_double_wide() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>::is_current_double_wide() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::is_current_double_wide() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::is_current_double_wide() const
Line
Count
Source
2525
3.08k
    {
2526
3.08k
        assert(count() != 0 || multibyte_left() != 0);
2527
3.08k
        return _get_width_at_current_cp_start(
2528
3.08k
                   _get_cp_length_at_current()) == 2;
2529
3.08k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::is_current_double_wide() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::is_current_double_wide() const
Line
Count
Source
2525
1.48k
    {
2526
1.48k
        assert(count() != 0 || multibyte_left() != 0);
2527
1.48k
        return _get_width_at_current_cp_start(
2528
1.48k
                   _get_cp_length_at_current()) == 2;
2529
1.48k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::is_current_double_wide() const
Line
Count
Source
2525
502
    {
2526
502
        assert(count() != 0 || multibyte_left() != 0);
2527
502
        return _get_width_at_current_cp_start(
2528
502
                   _get_cp_length_at_current()) == 2;
2529
502
    }
2530
2531
    constexpr decltype(auto) operator*()
2532
193k
    {
2533
193k
        return *m_current;
2534
193k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>::operator*()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::operator*()
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::operator*()
Line
Count
Source
2532
134k
    {
2533
134k
        return *m_current;
2534
134k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::operator*()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>::operator*()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::operator*()
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::operator*()
Line
Count
Source
2532
45.6k
    {
2533
45.6k
        return *m_current;
2534
45.6k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::operator*()
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::operator*()
Line
Count
Source
2532
10.0k
    {
2533
10.0k
        return *m_current;
2534
10.0k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::operator*()
Line
Count
Source
2532
3.38k
    {
2533
3.38k
        return *m_current;
2534
3.38k
    }
2535
    constexpr decltype(auto) operator*() const
2536
17.6k
    {
2537
17.6k
        return *m_current;
2538
17.6k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>::operator*() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::operator*() const
Line
Count
Source
2536
13.3k
    {
2537
13.3k
        return *m_current;
2538
13.3k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>::operator*() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::operator*() const
Line
Count
Source
2536
4.32k
    {
2537
4.32k
        return *m_current;
2538
4.32k
    }
2539
2540
    constexpr counted_width_iterator& operator++()
2541
198k
    {
2542
198k
        SCN_EXPECT(m_current != m_end);
2543
198k
        _increment_current();
2544
198k
        return *this;
2545
198k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>::operator++()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::operator++()
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::operator++()
Line
Count
Source
2541
151k
    {
2542
151k
        SCN_EXPECT(m_current != m_end);
2543
151k
        _increment_current();
2544
151k
        return *this;
2545
151k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::operator++()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>::operator++()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::operator++()
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::operator++()
Line
Count
Source
2541
32.4k
    {
2542
32.4k
        SCN_EXPECT(m_current != m_end);
2543
32.4k
        _increment_current();
2544
32.4k
        return *this;
2545
32.4k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::operator++()
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::operator++()
Line
Count
Source
2541
12.4k
    {
2542
12.4k
        SCN_EXPECT(m_current != m_end);
2543
12.4k
        _increment_current();
2544
12.4k
        return *this;
2545
12.4k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::operator++()
Line
Count
Source
2541
1.65k
    {
2542
1.65k
        SCN_EXPECT(m_current != m_end);
2543
1.65k
        _increment_current();
2544
1.65k
        return *this;
2545
1.65k
    }
2546
2547
    constexpr counted_width_iterator operator++(int)
2548
    {
2549
        auto tmp = *this;
2550
        ++*this;
2551
        return tmp;
2552
    }
2553
2554
    template <typename Iter = It>
2555
    constexpr auto operator--()
2556
        -> std::enable_if_t<ranges::bidirectional_iterator<Iter>,
2557
                            counted_width_iterator&>
2558
0
    {
2559
0
        _decrement_current();
2560
0
        return *this;
2561
0
    }
Unexecuted instantiation: _ZN3scn2v44impl27counted_width_iterator_impl22counted_width_iteratorIPKcS5_EmmIS5_EENSt3__19enable_ifIXsr6rangesE22bidirectional_iteratorIT_EERS6_E4typeEv
Unexecuted instantiation: _ZN3scn2v44impl27counted_width_iterator_impl22counted_width_iteratorINS3_IPKcS5_EENS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEE8sentinelILb1EEEEmmIS6_EENS8_9enable_ifIXsr6rangesE22bidirectional_iteratorIT_EERSG_E4typeEv
Unexecuted instantiation: _ZN3scn2v44impl27counted_width_iterator_impl22counted_width_iteratorIPKwS5_EmmIS5_EENSt3__19enable_ifIXsr6rangesE22bidirectional_iteratorIT_EERS6_E4typeEv
Unexecuted instantiation: _ZN3scn2v44impl27counted_width_iterator_impl22counted_width_iteratorINS3_IPKwS5_EENS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEE8sentinelILb1EEEEmmIS6_EENS8_9enable_ifIXsr6rangesE22bidirectional_iteratorIT_EERSG_E4typeEv
Unexecuted instantiation: _ZN3scn2v44impl27counted_width_iterator_impl22counted_width_iteratorINS3_IPKcS5_EENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS5_S5_EEE8sentinelILb1EEEEmmIS6_EENSt3__19enable_ifIXsr6rangesE22bidirectional_iteratorIT_EERSG_E4typeEv
Unexecuted instantiation: _ZN3scn2v44impl27counted_width_iterator_impl22counted_width_iteratorINS3_IPKwS5_EENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS5_S5_EEE8sentinelILb1EEEEmmIS6_EENSt3__19enable_ifIXsr6rangesE22bidirectional_iteratorIT_EERSG_E4typeEv
2562
2563
    template <typename Iter = It>
2564
    constexpr auto operator--(int)
2565
        -> std::enable_if_t<ranges::bidirectional_iterator<Iter>,
2566
                            counted_width_iterator>
2567
    {
2568
        auto tmp = *this;
2569
        --*this;
2570
        return tmp;
2571
    }
2572
2573
    // TODO: optimize, make better than forward, if possible
2574
#if 0
2575
                template <typename Iter = It>
2576
                constexpr auto operator+(difference_type n) -> std::enable_if_t<
2577
                    ranges_std::random_access_iterator<Iter>,
2578
                    counted_width_iterator>
2579
                {
2580
                    // TODO
2581
                    return counted_width_iterator(m_current + n, m_count - n);
2582
                }
2583
2584
                template <typename Iter = It,
2585
                          std::enable_if_t<ranges_std::random_access_iterator<
2586
                              Iter>>* = nullptr>
2587
                friend constexpr counted_width_iterator operator+(
2588
                    ranges_std::iter_difference_t<Iter> n,
2589
                    const counted_width_iterator<Iter>& x)
2590
                {
2591
                    return x + n;
2592
                }
2593
2594
                template <typename Iter = It>
2595
                constexpr auto operator+=(difference_type n)
2596
                    -> std::enable_if_t<
2597
                        ranges_std::random_access_iterator<Iter>,
2598
                        counted_width_iterator&>
2599
                {
2600
                    // TODO
2601
                    m_current += n;
2602
                    m_count -= n;
2603
                    return *this;
2604
                }
2605
2606
                template <typename Iter = It>
2607
                constexpr auto operator-(difference_type n) -> std::enable_if_t<
2608
                    ranges_std::random_access_iterator<Iter>,
2609
                    counted_width_iterator>
2610
                {
2611
                    // TODO
2612
                    return counted_width_iterator(m_current - n, m_count + n);
2613
                }
2614
2615
                template <typename Iter = It,
2616
                          std::enable_if_t<ranges_std::random_access_iterator<
2617
                              Iter>>* = nullptr>
2618
                constexpr decltype(auto) operator[](difference_type n) const
2619
                {
2620
                    return m_current[n];
2621
                }
2622
#endif
2623
2624
    template <typename OtherIt, typename OtherS>
2625
    friend constexpr auto operator==(
2626
        const counted_width_iterator& a,
2627
        const counted_width_iterator<OtherIt, OtherS>& b)
2628
        -> decltype(SCN_DECLVAL(const It&) == SCN_DECLVAL(const OtherIt&))
2629
118k
    {
2630
118k
        return a.m_current == b.m_current;
2631
118k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v4::detail::basic_scan_buffer<char>::forward_iterator const& (*scn::v4::impl::counted_width_iterator_impl::operator==<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::detail::basic_scan_buffer<char>::forward_iterator const& (*)()>(decltype(nullptr)))()))
Unexecuted instantiation: decltype (((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const& (*scn::v4::impl::counted_width_iterator_impl::operator==<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const& (*)()>(decltype(nullptr)))()))
decltype (((static_cast<char const* const& (*scn::v4::impl::counted_width_iterator_impl::operator==<char const*, char const*>(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&))()>(decltype(nullptr)))())==((static_cast<char const* const& (*)()>(decltype(nullptr)))()))
Line
Count
Source
2629
98.6k
    {
2630
98.6k
        return a.m_current == b.m_current;
2631
98.6k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*scn::v4::impl::counted_width_iterator_impl::operator==<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*)()>(decltype(nullptr)))()))
Unexecuted instantiation: decltype (((static_cast<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator const& (*scn::v4::impl::counted_width_iterator_impl::operator==<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator const& (*)()>(decltype(nullptr)))()))
Unexecuted instantiation: decltype (((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const& (*scn::v4::impl::counted_width_iterator_impl::operator==<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const& (*)()>(decltype(nullptr)))()))
decltype (((static_cast<wchar_t const* const& (*scn::v4::impl::counted_width_iterator_impl::operator==<wchar_t const*, wchar_t const*>(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&))()>(decltype(nullptr)))())==((static_cast<wchar_t const* const& (*)()>(decltype(nullptr)))()))
Line
Count
Source
2629
12.7k
    {
2630
12.7k
        return a.m_current == b.m_current;
2631
12.7k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*scn::v4::impl::counted_width_iterator_impl::operator==<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*)()>(decltype(nullptr)))()))
decltype (((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*scn::v4::impl::counted_width_iterator_impl::operator==<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*)()>(decltype(nullptr)))()))
Line
Count
Source
2629
7.28k
    {
2630
7.28k
        return a.m_current == b.m_current;
2631
7.28k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*scn::v4::impl::counted_width_iterator_impl::operator==<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*)()>(decltype(nullptr)))()))
2632
    template <typename OtherIt, typename OtherS>
2633
    friend constexpr auto operator!=(
2634
        const counted_width_iterator& a,
2635
        const counted_width_iterator<OtherIt, OtherS>& b)
2636
        -> decltype(SCN_DECLVAL(const It&) == SCN_DECLVAL(const OtherIt&))
2637
107k
    {
2638
107k
        return !(a == b);
2639
107k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v4::detail::basic_scan_buffer<char>::forward_iterator const& (*scn::v4::impl::counted_width_iterator_impl::operator!=<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::detail::basic_scan_buffer<char>::forward_iterator const& (*)()>(decltype(nullptr)))()))
Unexecuted instantiation: decltype (((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const& (*scn::v4::impl::counted_width_iterator_impl::operator!=<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const& (*)()>(decltype(nullptr)))()))
decltype (((static_cast<char const* const& (*scn::v4::impl::counted_width_iterator_impl::operator!=<char const*, char const*>(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&))()>(decltype(nullptr)))())==((static_cast<char const* const& (*)()>(decltype(nullptr)))()))
Line
Count
Source
2637
89.1k
    {
2638
89.1k
        return !(a == b);
2639
89.1k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*scn::v4::impl::counted_width_iterator_impl::operator!=<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*)()>(decltype(nullptr)))()))
Unexecuted instantiation: decltype (((static_cast<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator const& (*scn::v4::impl::counted_width_iterator_impl::operator!=<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator const& (*)()>(decltype(nullptr)))()))
Unexecuted instantiation: decltype (((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const& (*scn::v4::impl::counted_width_iterator_impl::operator!=<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const& (*)()>(decltype(nullptr)))()))
decltype (((static_cast<wchar_t const* const& (*scn::v4::impl::counted_width_iterator_impl::operator!=<wchar_t const*, wchar_t const*>(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&))()>(decltype(nullptr)))())==((static_cast<wchar_t const* const& (*)()>(decltype(nullptr)))()))
Line
Count
Source
2637
11.5k
    {
2638
11.5k
        return !(a == b);
2639
11.5k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*scn::v4::impl::counted_width_iterator_impl::operator!=<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*)()>(decltype(nullptr)))()))
decltype (((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*scn::v4::impl::counted_width_iterator_impl::operator!=<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*)()>(decltype(nullptr)))()))
Line
Count
Source
2637
7.28k
    {
2638
7.28k
        return !(a == b);
2639
7.28k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*scn::v4::impl::counted_width_iterator_impl::operator!=<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > const&, scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*)()>(decltype(nullptr)))()))
2640
2641
    friend constexpr bool operator==(const counted_width_iterator& x,
2642
                                     ranges::default_sentinel_t)
2643
    {
2644
        return (x.count() == 0 && x.multibyte_left() == 0) ||
2645
               (x.count() == 1 && x.multibyte_left() == 0 &&
2646
                x.is_current_double_wide());
2647
    }
2648
    friend constexpr bool operator==(ranges::default_sentinel_t s,
2649
                                     const counted_width_iterator& x)
2650
    {
2651
        return x == s;
2652
    }
2653
2654
    friend constexpr bool operator!=(const counted_width_iterator& a,
2655
                                     ranges::default_sentinel_t b)
2656
    {
2657
        return !(a == b);
2658
    }
2659
    friend constexpr bool operator!=(ranges::default_sentinel_t a,
2660
                                     const counted_width_iterator& b)
2661
    {
2662
        return !(a == b);
2663
    }
2664
2665
    template <typename OtherIt, typename OtherS>
2666
    friend constexpr auto operator<(
2667
        const counted_width_iterator& a,
2668
        const counted_width_iterator<OtherIt, OtherS>& b)
2669
        -> decltype(SCN_DECLVAL(const It&) < SCN_DECLVAL(const OtherIt&))
2670
    {
2671
        if (a.count() == b.count()) {
2672
            return a.multibyte_left() > b.multibyte_left();
2673
        }
2674
2675
        return a.count() > b.count();
2676
    }
2677
2678
    template <typename OtherIt, typename OtherS>
2679
    friend constexpr auto operator>(
2680
        const counted_width_iterator& a,
2681
        const counted_width_iterator<OtherIt, OtherS>& b)
2682
        -> decltype(SCN_DECLVAL(const It&) < SCN_DECLVAL(const OtherIt&))
2683
    {
2684
        return !(b < a);
2685
    }
2686
2687
    template <typename OtherIt, typename OtherS>
2688
    friend constexpr auto operator<=(
2689
        const counted_width_iterator& a,
2690
        const counted_width_iterator<OtherIt, OtherS>& b)
2691
        -> decltype(SCN_DECLVAL(const It&) < SCN_DECLVAL(const OtherIt&))
2692
    {
2693
        return !(b < a);
2694
    }
2695
2696
    template <typename OtherIt, typename OtherS>
2697
    friend constexpr auto operator>=(
2698
        const counted_width_iterator& a,
2699
        const counted_width_iterator<OtherIt, OtherS>& b)
2700
        -> decltype(SCN_DECLVAL(const It&) < SCN_DECLVAL(const OtherIt&))
2701
    {
2702
        return !(a < b);
2703
    }
2704
2705
#if 0
2706
                template <typename OtherIt, typename OtherS>
2707
                friend constexpr auto operator-(
2708
                    const counted_width_iterator& a,
2709
                    const counted_width_iterator<OtherIt, OtherS>& b)
2710
                    -> std::enable_if_t<ranges_std::common_with<OtherIt, It>,
2711
                                        ranges_std::iter_difference_t<OtherIt>>
2712
                {
2713
                    // TODO
2714
                }
2715
2716
                friend constexpr ranges_std::iter_difference_t<It> operator-(
2717
                    const counted_width_iterator& x,
2718
                    ranges_std::default_sentinel_t)
2719
                {
2720
                    // TODO
2721
                }
2722
2723
                friend constexpr ranges_std::iter_difference_t<It> operator-(
2724
                    ranges_std::default_sentinel_t,
2725
                    const counted_width_iterator& x)
2726
                {
2727
                    // TODO
2728
                }
2729
#endif
2730
2731
#if 0
2732
                template <typename Iter = It>
2733
                constexpr auto operator-=(difference_type n)
2734
                    -> std::enable_if_t<
2735
                        ranges_std::random_access_iterator<Iter>,
2736
                        counted_width_iterator&>
2737
                {
2738
                    // TODO
2739
                    m_current -= n;
2740
                    m_count += n;
2741
                    return *this;
2742
                }
2743
#endif
2744
2745
private:
2746
    difference_type _get_cp_length_at_current() const
2747
134k
    {
2748
134k
        return static_cast<difference_type>(
2749
134k
            detail::code_point_length_by_starting_code_unit(*m_current));
2750
134k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>::_get_cp_length_at_current() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::_get_cp_length_at_current() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::_get_cp_length_at_current() const
Line
Count
Source
2747
88.1k
    {
2748
88.1k
        return static_cast<difference_type>(
2749
88.1k
            detail::code_point_length_by_starting_code_unit(*m_current));
2750
88.1k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::_get_cp_length_at_current() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>::_get_cp_length_at_current() const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::_get_cp_length_at_current() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::_get_cp_length_at_current() const
Line
Count
Source
2747
35.4k
    {
2748
35.4k
        return static_cast<difference_type>(
2749
35.4k
            detail::code_point_length_by_starting_code_unit(*m_current));
2750
35.4k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::_get_cp_length_at_current() const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::_get_cp_length_at_current() const
Line
Count
Source
2747
8.62k
    {
2748
8.62k
        return static_cast<difference_type>(
2749
8.62k
            detail::code_point_length_by_starting_code_unit(*m_current));
2750
8.62k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::_get_cp_length_at_current() const
Line
Count
Source
2747
2.16k
    {
2748
2.16k
        return static_cast<difference_type>(
2749
2.16k
            detail::code_point_length_by_starting_code_unit(*m_current));
2750
2.16k
    }
2751
2752
    difference_type _get_width_at_current_cp_start(difference_type cplen) const
2753
134k
    {
2754
134k
        if (SCN_UNLIKELY(cplen == 0)) {
2755
1.55k
            return 0;
2756
1.55k
        }
2757
2758
132k
        if (cplen == 1) {
2759
99.4k
            SCN_EXPECT(m_current != m_end);
2760
99.4k
            auto cp = static_cast<char32_t>(*m_current);
2761
99.4k
            return static_cast<difference_type>(calculate_valid_text_width(cp));
2762
99.4k
        }
2763
2764
33.4k
        auto r = read_exactly_n_code_units(ranges::subrange{m_current, m_end},
2765
33.4k
                                           cplen);
2766
33.4k
        if (SCN_UNLIKELY(!r)) {
2767
422
            return 0;
2768
422
        }
2769
2770
32.9k
        auto cp_str = std::basic_string<value_type>{m_current, *r};
2771
32.9k
        return static_cast<difference_type>(
2772
32.9k
            calculate_text_width(std::basic_string_view<value_type>{cp_str}));
2773
33.4k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>::_get_width_at_current_cp_start(long) const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::_get_width_at_current_cp_start(long) const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::_get_width_at_current_cp_start(long) const
Line
Count
Source
2753
88.1k
    {
2754
88.1k
        if (SCN_UNLIKELY(cplen == 0)) {
2755
1.55k
            return 0;
2756
1.55k
        }
2757
2758
86.5k
        if (cplen == 1) {
2759
57.0k
            SCN_EXPECT(m_current != m_end);
2760
57.0k
            auto cp = static_cast<char32_t>(*m_current);
2761
57.0k
            return static_cast<difference_type>(calculate_valid_text_width(cp));
2762
57.0k
        }
2763
2764
29.4k
        auto r = read_exactly_n_code_units(ranges::subrange{m_current, m_end},
2765
29.4k
                                           cplen);
2766
29.4k
        if (SCN_UNLIKELY(!r)) {
2767
422
            return 0;
2768
422
        }
2769
2770
29.0k
        auto cp_str = std::basic_string<value_type>{m_current, *r};
2771
29.0k
        return static_cast<difference_type>(
2772
29.0k
            calculate_text_width(std::basic_string_view<value_type>{cp_str}));
2773
29.4k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::_get_width_at_current_cp_start(long) const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>::_get_width_at_current_cp_start(long) const
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::_get_width_at_current_cp_start(long) const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::_get_width_at_current_cp_start(long) const
Line
Count
Source
2753
35.4k
    {
2754
35.4k
        if (SCN_UNLIKELY(cplen == 0)) {
2755
0
            return 0;
2756
0
        }
2757
2758
35.4k
        if (cplen == 1) {
2759
35.4k
            SCN_EXPECT(m_current != m_end);
2760
35.4k
            auto cp = static_cast<char32_t>(*m_current);
2761
35.4k
            return static_cast<difference_type>(calculate_valid_text_width(cp));
2762
35.4k
        }
2763
2764
0
        auto r = read_exactly_n_code_units(ranges::subrange{m_current, m_end},
2765
0
                                           cplen);
2766
0
        if (SCN_UNLIKELY(!r)) {
2767
0
            return 0;
2768
0
        }
2769
2770
0
        auto cp_str = std::basic_string<value_type>{m_current, *r};
2771
0
        return static_cast<difference_type>(
2772
0
            calculate_text_width(std::basic_string_view<value_type>{cp_str}));
2773
0
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::_get_width_at_current_cp_start(long) const
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::_get_width_at_current_cp_start(long) const
Line
Count
Source
2753
8.62k
    {
2754
8.62k
        if (SCN_UNLIKELY(cplen == 0)) {
2755
0
            return 0;
2756
0
        }
2757
2758
8.62k
        if (cplen == 1) {
2759
4.69k
            SCN_EXPECT(m_current != m_end);
2760
4.69k
            auto cp = static_cast<char32_t>(*m_current);
2761
4.69k
            return static_cast<difference_type>(calculate_valid_text_width(cp));
2762
4.69k
        }
2763
2764
3.93k
        auto r = read_exactly_n_code_units(ranges::subrange{m_current, m_end},
2765
3.93k
                                           cplen);
2766
3.93k
        if (SCN_UNLIKELY(!r)) {
2767
0
            return 0;
2768
0
        }
2769
2770
3.93k
        auto cp_str = std::basic_string<value_type>{m_current, *r};
2771
3.93k
        return static_cast<difference_type>(
2772
3.93k
            calculate_text_width(std::basic_string_view<value_type>{cp_str}));
2773
3.93k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::_get_width_at_current_cp_start(long) const
Line
Count
Source
2753
2.16k
    {
2754
2.16k
        if (SCN_UNLIKELY(cplen == 0)) {
2755
0
            return 0;
2756
0
        }
2757
2758
2.16k
        if (cplen == 1) {
2759
2.16k
            SCN_EXPECT(m_current != m_end);
2760
2.16k
            auto cp = static_cast<char32_t>(*m_current);
2761
2.16k
            return static_cast<difference_type>(calculate_valid_text_width(cp));
2762
2.16k
        }
2763
2764
0
        auto r = read_exactly_n_code_units(ranges::subrange{m_current, m_end},
2765
0
                                           cplen);
2766
0
        if (SCN_UNLIKELY(!r)) {
2767
0
            return 0;
2768
0
        }
2769
2770
0
        auto cp_str = std::basic_string<value_type>{m_current, *r};
2771
0
        return static_cast<difference_type>(
2772
0
            calculate_text_width(std::basic_string_view<value_type>{cp_str}));
2773
0
    }
2774
2775
    void _increment_current()
2776
198k
    {
2777
198k
        if (m_multibyte_left == 0) {
2778
120k
            auto cplen = _get_cp_length_at_current();
2779
120k
            m_multibyte_left = cplen - 1;
2780
120k
            m_count -= _get_width_at_current_cp_start(cplen);
2781
120k
        }
2782
77.2k
        else {
2783
77.2k
            --m_multibyte_left;
2784
77.2k
        }
2785
2786
198k
        ++m_current;
2787
198k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>::_increment_current()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::_increment_current()
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::_increment_current()
Line
Count
Source
2776
151k
    {
2777
151k
        if (m_multibyte_left == 0) {
2778
79.7k
            auto cplen = _get_cp_length_at_current();
2779
79.7k
            m_multibyte_left = cplen - 1;
2780
79.7k
            m_count -= _get_width_at_current_cp_start(cplen);
2781
79.7k
        }
2782
72.0k
        else {
2783
72.0k
            --m_multibyte_left;
2784
72.0k
        }
2785
2786
151k
        ++m_current;
2787
151k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::_increment_current()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>::_increment_current()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> >::_increment_current()
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::_increment_current()
Line
Count
Source
2776
32.4k
    {
2777
32.4k
        if (m_multibyte_left == 0) {
2778
32.4k
            auto cplen = _get_cp_length_at_current();
2779
32.4k
            m_multibyte_left = cplen - 1;
2780
32.4k
            m_count -= _get_width_at_current_cp_start(cplen);
2781
32.4k
        }
2782
0
        else {
2783
0
            --m_multibyte_left;
2784
0
        }
2785
2786
32.4k
        ++m_current;
2787
32.4k
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::_increment_current()
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::_increment_current()
Line
Count
Source
2776
12.4k
    {
2777
12.4k
        if (m_multibyte_left == 0) {
2778
7.14k
            auto cplen = _get_cp_length_at_current();
2779
7.14k
            m_multibyte_left = cplen - 1;
2780
7.14k
            m_count -= _get_width_at_current_cp_start(cplen);
2781
7.14k
        }
2782
5.26k
        else {
2783
5.26k
            --m_multibyte_left;
2784
5.26k
        }
2785
2786
12.4k
        ++m_current;
2787
12.4k
    }
scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::_increment_current()
Line
Count
Source
2776
1.65k
    {
2777
1.65k
        if (m_multibyte_left == 0) {
2778
1.65k
            auto cplen = _get_cp_length_at_current();
2779
1.65k
            m_multibyte_left = cplen - 1;
2780
1.65k
            m_count -= _get_width_at_current_cp_start(cplen);
2781
1.65k
        }
2782
0
        else {
2783
0
            --m_multibyte_left;
2784
0
        }
2785
2786
1.65k
        ++m_current;
2787
1.65k
    }
2788
2789
    void _decrement_current()
2790
0
    {
2791
0
        --m_current;
2792
2793
0
        auto cplen = _get_cp_length_at_current();
2794
0
        if (cplen == 0) {
2795
0
            ++m_multibyte_left;
2796
0
        }
2797
0
        else {
2798
0
            m_count += _get_width_at_current_cp_start(cplen);
2799
0
            m_multibyte_left = cplen - 1;
2800
0
        }
2801
0
    }
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::_decrement_current()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::_decrement_current()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::_decrement_current()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::_decrement_current()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::_decrement_current()
Unexecuted instantiation: scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::_decrement_current()
2802
2803
    It m_current{};
2804
    S m_end{};
2805
    difference_type m_count{0};
2806
    difference_type m_multibyte_left{0};
2807
};
2808
2809
template <typename I, typename S>
2810
counted_width_iterator(I, S, ranges::iter_difference_t<I>)
2811
    -> counted_width_iterator<I, S>;
2812
}  // namespace counted_width_iterator_impl
2813
2814
using counted_width_iterator_impl::counted_width_iterator;
2815
2816
template <typename View, typename = void>
2817
struct take_width_view_storage;
2818
2819
template <typename View>
2820
struct take_width_view_storage<View,
2821
                               std::enable_if_t<ranges::borrowed_range<View>>> {
2822
20.6k
    take_width_view_storage(const View& v) : view(v) {}
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, void>::take_width_view_storage(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&)
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, void>::take_width_view_storage(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > const&)
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<std::__1::basic_string_view<char, std::__1::char_traits<char> >, void>::take_width_view_storage(std::__1::basic_string_view<char, std::__1::char_traits<char> > const&)
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >, void>::take_width_view_storage(scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&)
scn::v4::impl::take_width_view_storage<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, void>::take_width_view_storage(scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> const&)
Line
Count
Source
2822
10.4k
    take_width_view_storage(const View& v) : view(v) {}
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, void>::take_width_view_storage(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&)
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, void>::take_width_view_storage(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > const&)
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, void>::take_width_view_storage(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&)
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >, void>::take_width_view_storage(scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > const&)
scn::v4::impl::take_width_view_storage<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, void>::take_width_view_storage(scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> const&)
Line
Count
Source
2822
5.13k
    take_width_view_storage(const View& v) : view(v) {}
scn::v4::impl::take_width_view_storage<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >, void>::take_width_view_storage(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > const&)
Line
Count
Source
2822
3.41k
    take_width_view_storage(const View& v) : view(v) {}
scn::v4::impl::take_width_view_storage<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >, void>::take_width_view_storage(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > const&)
Line
Count
Source
2822
1.63k
    take_width_view_storage(const View& v) : view(v) {}
2823
2824
    const View& get() const
2825
206k
    {
2826
206k
        return view;
2827
206k
    }
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, void>::get() const
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, void>::get() const
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<std::__1::basic_string_view<char, std::__1::char_traits<char> >, void>::get() const
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >, void>::get() const
scn::v4::impl::take_width_view_storage<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, void>::get() const
Line
Count
Source
2825
122k
    {
2826
122k
        return view;
2827
122k
    }
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, void>::get() const
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >, void>::get() const
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, void>::get() const
Unexecuted instantiation: scn::v4::impl::take_width_view_storage<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >, void>::get() const
scn::v4::impl::take_width_view_storage<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, void>::get() const
Line
Count
Source
2825
50.9k
    {
2826
50.9k
        return view;
2827
50.9k
    }
scn::v4::impl::take_width_view_storage<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >, void>::get() const
Line
Count
Source
2825
23.1k
    {
2826
23.1k
        return view;
2827
23.1k
    }
scn::v4::impl::take_width_view_storage<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >, void>::get() const
Line
Count
Source
2825
10.2k
    {
2826
10.2k
        return view;
2827
10.2k
    }
2828
2829
    View view;
2830
};
2831
2832
template <typename View>
2833
struct take_width_view_storage<
2834
    View,
2835
    std::enable_if_t<!ranges::borrowed_range<View>>> {
2836
    take_width_view_storage(const View& v) : view(&v) {}
2837
2838
    const View& get() const
2839
    {
2840
        return *view;
2841
    }
2842
2843
    const View* view;
2844
};
2845
2846
template <typename View>
2847
class take_width_view : public ranges::view_interface<take_width_view<View>> {
2848
    template <bool IsConst>
2849
    class sentinel {
2850
        friend class sentinel<!IsConst>;
2851
        using Base = std::conditional_t<IsConst, const View, View>;
2852
        using CWI = counted_width_iterator<ranges::iterator_t<Base>,
2853
                                           ranges::sentinel_t<Base>>;
2854
        using underlying = ranges::sentinel_t<Base>;
2855
2856
    public:
2857
        constexpr sentinel() = default;
2858
2859
112k
        constexpr explicit sentinel(underlying s) : m_end(SCN_MOVE(s)) {}
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>::sentinel(scn::v4::ranges::default_sentinel_t)
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true>::sentinel(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>)
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true>::sentinel(scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>)
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>::sentinel(scn::v4::ranges::default_sentinel_t)
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true>::sentinel(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true>)
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true>::sentinel(scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>)
scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true>::sentinel(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>)
Line
Count
Source
2859
11.7k
        constexpr explicit sentinel(underlying s) : m_end(SCN_MOVE(s)) {}
scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true>::sentinel(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>)
Line
Count
Source
2859
4.65k
        constexpr explicit sentinel(underlying s) : m_end(SCN_MOVE(s)) {}
Unexecuted instantiation: scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>::sentinel(char const*)
scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>::sentinel(char const*)
Line
Count
Source
2859
71.5k
        constexpr explicit sentinel(underlying s) : m_end(SCN_MOVE(s)) {}
Unexecuted instantiation: scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>::sentinel(wchar_t const*)
scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>::sentinel(wchar_t const*)
Line
Count
Source
2859
24.5k
        constexpr explicit sentinel(underlying s) : m_end(SCN_MOVE(s)) {}
2860
2861
        template <
2862
            typename S,
2863
            std::enable_if_t<std::is_same_v<S, sentinel<!IsConst>>>* = nullptr,
2864
            bool C = IsConst,
2865
            typename VV = View,
2866
            std::enable_if_t<C && std::is_convertible_v<ranges::sentinel_t<VV>,
2867
                                                        underlying>>* = nullptr>
2868
        constexpr explicit sentinel(S s) : m_end(SCN_MOVE(s.m_end))
2869
        {
2870
        }
2871
2872
        constexpr underlying base() const
2873
        {
2874
            return m_end;
2875
        }
2876
2877
        friend constexpr bool operator==(const CWI& y, const sentinel& x)
2878
205k
        {
2879
205k
            return (y.count() == 0 && y.multibyte_left() == 0) ||
2880
205k
                   y.base() == x.m_end ||
2881
205k
                   (y.count() == 1 && y.multibyte_left() == 0 &&
2882
201k
                    y.is_current_double_wide());
2883
205k
        }
Unexecuted instantiation: scn::v4::impl::operator==(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> const&)
Unexecuted instantiation: scn::v4::impl::operator==(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v4::impl::operator==(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v4::impl::operator==(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > const&, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> const&)
scn::v4::impl::operator==(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> const&)
Line
Count
Source
2878
140k
        {
2879
140k
            return (y.count() == 0 && y.multibyte_left() == 0) ||
2880
140k
                   y.base() == x.m_end ||
2881
140k
                   (y.count() == 1 && y.multibyte_left() == 0 &&
2882
138k
                    y.is_current_double_wide());
2883
140k
        }
Unexecuted instantiation: scn::v4::impl::operator==(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> const&)
Unexecuted instantiation: scn::v4::impl::operator==(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v4::impl::operator==(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v4::impl::operator==(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > const&, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> const&)
scn::v4::impl::operator==(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> const&)
Line
Count
Source
2878
44.3k
        {
2879
44.3k
            return (y.count() == 0 && y.multibyte_left() == 0) ||
2880
44.3k
                   y.base() == x.m_end ||
2881
44.3k
                   (y.count() == 1 && y.multibyte_left() == 0 &&
2882
43.2k
                    y.is_current_double_wide());
2883
44.3k
        }
scn::v4::impl::operator==(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > const&, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> const&)
Line
Count
Source
2878
15.6k
        {
2879
15.6k
            return (y.count() == 0 && y.multibyte_left() == 0) ||
2880
15.6k
                   y.base() == x.m_end ||
2881
15.6k
                   (y.count() == 1 && y.multibyte_left() == 0 &&
2882
14.9k
                    y.is_current_double_wide());
2883
15.6k
        }
scn::v4::impl::operator==(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > const&, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> const&)
Line
Count
Source
2878
4.65k
        {
2879
4.65k
            return (y.count() == 0 && y.multibyte_left() == 0) ||
2880
4.65k
                   y.base() == x.m_end ||
2881
4.65k
                   (y.count() == 1 && y.multibyte_left() == 0 &&
2882
4.48k
                    y.is_current_double_wide());
2883
4.65k
        }
2884
2885
        friend constexpr bool operator==(const sentinel& x, const CWI& y)
2886
        {
2887
            return y == x;
2888
        }
2889
2890
        friend constexpr bool operator!=(const CWI& y, const sentinel& x)
2891
103k
        {
2892
103k
            return !(y == x);
2893
103k
        }
Unexecuted instantiation: scn::v4::impl::operator!=(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> const&)
Unexecuted instantiation: scn::v4::impl::operator!=(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v4::impl::operator!=(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v4::impl::operator!=(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > const&, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> const&)
scn::v4::impl::operator!=(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> const&)
Line
Count
Source
2891
72.2k
        {
2892
72.2k
            return !(y == x);
2893
72.2k
        }
Unexecuted instantiation: scn::v4::impl::operator!=(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> const&)
Unexecuted instantiation: scn::v4::impl::operator!=(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v4::impl::operator!=(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v4::impl::operator!=(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > const&, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> const&)
scn::v4::impl::operator!=(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> const&)
Line
Count
Source
2891
21.6k
        {
2892
21.6k
            return !(y == x);
2893
21.6k
        }
scn::v4::impl::operator!=(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > const&, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> const&)
Line
Count
Source
2891
7.35k
        {
2892
7.35k
            return !(y == x);
2893
7.35k
        }
scn::v4::impl::operator!=(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > const&, scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> const&)
Line
Count
Source
2891
2.18k
        {
2892
2.18k
            return !(y == x);
2893
2.18k
        }
2894
2895
        friend constexpr bool operator!=(const sentinel& x, const CWI& y)
2896
        {
2897
            return !(y == x);
2898
        }
2899
2900
    private:
2901
        SCN_NO_UNIQUE_ADDRESS underlying m_end{};
2902
    };
2903
2904
public:
2905
    using value_type = ranges::range_value_t<View>;
2906
2907
    take_width_view() = default;
2908
2909
    constexpr take_width_view(const View& base, std::ptrdiff_t count)
2910
20.6k
        : m_base(base), m_count(count)
2911
20.6k
    {
2912
20.6k
    }
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::take_width_view(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, long)
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::take_width_view(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > const&, long)
Unexecuted instantiation: scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::take_width_view(std::__1::basic_string_view<char, std::__1::char_traits<char> > const&, long)
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::take_width_view(scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, long)
scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::take_width_view(scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> const&, long)
Line
Count
Source
2910
10.4k
        : m_base(base), m_count(count)
2911
10.4k
    {
2912
10.4k
    }
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::take_width_view(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, long)
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::take_width_view(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > const&, long)
Unexecuted instantiation: scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::take_width_view(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, long)
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::take_width_view(scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > const&, long)
scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::take_width_view(scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> const&, long)
Line
Count
Source
2910
5.13k
        : m_base(base), m_count(count)
2911
5.13k
    {
2912
5.13k
    }
scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::take_width_view(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > const&, long)
Line
Count
Source
2910
3.41k
        : m_base(base), m_count(count)
2911
3.41k
    {
2912
3.41k
    }
scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::take_width_view(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > const&, long)
Line
Count
Source
2910
1.63k
        : m_base(base), m_count(count)
2911
1.63k
    {
2912
1.63k
    }
2913
2914
    constexpr View base() const
2915
    {
2916
        return m_base;
2917
    }
2918
2919
    constexpr auto begin() const
2920
47.2k
    {
2921
47.2k
        return counted_width_iterator{m_base.get().begin(), m_base.get().end(),
2922
47.2k
                                      m_count};
2923
47.2k
    }
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::begin() const
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::begin() const
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::begin() const
Unexecuted instantiation: scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::begin() const
scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::begin() const
Line
Count
Source
2920
25.5k
    {
2921
25.5k
        return counted_width_iterator{m_base.get().begin(), m_base.get().end(),
2922
25.5k
                                      m_count};
2923
25.5k
    }
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::begin() const
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::begin() const
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::begin() const
Unexecuted instantiation: scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::begin() const
scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::begin() const
Line
Count
Source
2920
13.1k
    {
2921
13.1k
        return counted_width_iterator{m_base.get().begin(), m_base.get().end(),
2922
13.1k
                                      m_count};
2923
13.1k
    }
scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::begin() const
Line
Count
Source
2920
5.69k
    {
2921
5.69k
        return counted_width_iterator{m_base.get().begin(), m_base.get().end(),
2922
5.69k
                                      m_count};
2923
5.69k
    }
scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::begin() const
Line
Count
Source
2920
2.80k
    {
2921
2.80k
        return counted_width_iterator{m_base.get().begin(), m_base.get().end(),
2922
2.80k
                                      m_count};
2923
2.80k
    }
2924
2925
    constexpr auto end() const
2926
112k
    {
2927
112k
        return sentinel<true>{m_base.get().end()};
2928
112k
    }
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::end() const
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::end() const
Unexecuted instantiation: scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::end() const
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::end() const
scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >::end() const
Line
Count
Source
2926
71.5k
    {
2927
71.5k
        return sentinel<true>{m_base.get().end()};
2928
71.5k
    }
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >::end() const
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >::end() const
Unexecuted instantiation: scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::end() const
Unexecuted instantiation: scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::end() const
scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::end() const
Line
Count
Source
2926
24.5k
    {
2927
24.5k
        return sentinel<true>{m_base.get().end()};
2928
24.5k
    }
scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >::end() const
Line
Count
Source
2926
11.7k
    {
2927
11.7k
        return sentinel<true>{m_base.get().end()};
2928
11.7k
    }
scn::v4::impl::take_width_view<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::end() const
Line
Count
Source
2926
4.65k
    {
2927
4.65k
        return sentinel<true>{m_base.get().end()};
2928
4.65k
    }
2929
2930
private:
2931
    take_width_view_storage<View> m_base{};
2932
    std::ptrdiff_t m_count{0};
2933
};
2934
2935
template <typename R>
2936
take_width_view(R&&, std::ptrdiff_t) -> take_width_view<R>;
2937
2938
struct _take_width_fn {
2939
    template <typename R>
2940
    constexpr auto operator()(const R& r, std::ptrdiff_t n) const
2941
        -> decltype(take_width_view{r, n})
2942
20.6k
    {
2943
20.6k
        return take_width_view{r, n};
2944
20.6k
    }
Unexecuted instantiation: decltype (scn::v4::impl::take_width_view{{parm#1}, {parm#2}}) scn::v4::impl::_take_width_fn::operator()<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, long) const
Unexecuted instantiation: decltype (scn::v4::impl::take_width_view{{parm#1}, {parm#2}}) scn::v4::impl::_take_width_fn::operator()<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > const&, long) const
Unexecuted instantiation: decltype (scn::v4::impl::take_width_view{{parm#1}, {parm#2}}) scn::v4::impl::_take_width_fn::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> > const&, long) const
Unexecuted instantiation: decltype (scn::v4::impl::take_width_view{{parm#1}, {parm#2}}) scn::v4::impl::_take_width_fn::operator()<scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(scn::v4::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, long) const
decltype (scn::v4::impl::take_width_view{{parm#1}, {parm#2}}) scn::v4::impl::_take_width_fn::operator()<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> const&, long) const
Line
Count
Source
2942
10.4k
    {
2943
10.4k
        return take_width_view{r, n};
2944
10.4k
    }
Unexecuted instantiation: decltype (scn::v4::impl::take_width_view{{parm#1}, {parm#2}}) scn::v4::impl::_take_width_fn::operator()<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, long) const
Unexecuted instantiation: decltype (scn::v4::impl::take_width_view{{parm#1}, {parm#2}}) scn::v4::impl::_take_width_fn::operator()<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > const&, long) const
Unexecuted instantiation: decltype (scn::v4::impl::take_width_view{{parm#1}, {parm#2}}) scn::v4::impl::_take_width_fn::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, long) const
Unexecuted instantiation: decltype (scn::v4::impl::take_width_view{{parm#1}, {parm#2}}) scn::v4::impl::_take_width_fn::operator()<scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >(scn::v4::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > const&, long) const
decltype (scn::v4::impl::take_width_view{{parm#1}, {parm#2}}) scn::v4::impl::_take_width_fn::operator()<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> const&, long) const
Line
Count
Source
2942
5.13k
    {
2943
5.13k
        return take_width_view{r, n};
2944
5.13k
    }
decltype (scn::v4::impl::take_width_view{{parm#1}, {parm#2}}) scn::v4::impl::_take_width_fn::operator()<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > const&, long) const
Line
Count
Source
2942
3.41k
    {
2943
3.41k
        return take_width_view{r, n};
2944
3.41k
    }
decltype (scn::v4::impl::take_width_view{{parm#1}, {parm#2}}) scn::v4::impl::_take_width_fn::operator()<scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >(scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > const&, long) const
Line
Count
Source
2942
1.63k
    {
2943
1.63k
        return take_width_view{r, n};
2944
1.63k
    }
2945
};
2946
2947
inline constexpr _take_width_fn take_width{};
2948
}  // namespace impl
2949
2950
namespace ranges {
2951
template <typename R>
2952
inline constexpr bool enable_borrowed_range<::scn::impl::take_width_view<R>> =
2953
    enable_borrowed_range<R>;
2954
}
2955
2956
/////////////////////////////////////////////////////////////////
2957
// contiguous_scan_context
2958
/////////////////////////////////////////////////////////////////
2959
2960
template <typename CharT>
2961
class basic_scan_context<ranges::subrange<const CharT*, const CharT*>, CharT>
2962
    : public detail::scan_context_base<basic_scan_args<
2963
          basic_scan_context<detail::buffer_range_tag, CharT>>> {
2964
    using base = detail::scan_context_base<
2965
        basic_scan_args<basic_scan_context<detail::buffer_range_tag, CharT>>>;
2966
2967
    using parent_context_type =
2968
        basic_scan_context<detail::buffer_range_tag, CharT>;
2969
    using args_type = basic_scan_args<parent_context_type>;
2970
    using arg_type = basic_scan_arg<parent_context_type>;
2971
2972
public:
2973
    using char_type = CharT;
2974
    using range_type = ranges::subrange<const char_type*, const char_type*>;
2975
    using iterator = const char_type*;
2976
    using sentinel = const char_type*;
2977
    using parse_context_type = basic_scan_parse_context<char_type>;
2978
2979
    template <typename Range,
2980
              std::enable_if_t<ranges::contiguous_range<Range> &&
2981
                               ranges::borrowed_range<Range>>* = nullptr>
2982
    constexpr basic_scan_context(Range&& r,
2983
                                 args_type a,
2984
                                 detail::locale_ref loc = {})
2985
149k
        : base(SCN_MOVE(a), loc),
2986
149k
          m_range(ranges::data(r), ranges::data(r) + ranges::size(r)),
2987
149k
          m_current(m_range.begin())
2988
149k
    {
2989
149k
    }
Unexecuted instantiation: _ZN3scn2v418basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS7_EEcEC2INSt3__117basic_string_viewIcNSB_11char_traitsIcEEEETnPNSB_9enable_ifIXaasr6rangesE16contiguous_rangeIT_Esr6rangesE14borrowed_rangeISH_EEvE4typeELPv0EEEOSH_NS0_15basic_scan_argsINS1_INS0_6detail16buffer_range_tagEcEEEENSO_10locale_refE
Unexecuted instantiation: _ZN3scn2v418basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS7_EEwEC2INSt3__117basic_string_viewIwNSB_11char_traitsIwEEEETnPNSB_9enable_ifIXaasr6rangesE16contiguous_rangeIT_Esr6rangesE14borrowed_rangeISH_EEvE4typeELPv0EEEOSH_NS0_15basic_scan_argsINS1_INS0_6detail16buffer_range_tagEwEEEENSO_10locale_refE
_ZN3scn2v418basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS7_EEcEC2IRS8_TnPNSt3__19enable_ifIXaasr6rangesE16contiguous_rangeIT_Esr6rangesE14borrowed_rangeISE_EEvE4typeELPv0EEEOSE_NS0_15basic_scan_argsINS1_INS0_6detail16buffer_range_tagEcEEEENSL_10locale_refE
Line
Count
Source
2985
49.6k
        : base(SCN_MOVE(a), loc),
2986
49.6k
          m_range(ranges::data(r), ranges::data(r) + ranges::size(r)),
2987
49.6k
          m_current(m_range.begin())
2988
49.6k
    {
2989
49.6k
    }
_ZN3scn2v418basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS7_EEwEC2IRS8_TnPNSt3__19enable_ifIXaasr6rangesE16contiguous_rangeIT_Esr6rangesE14borrowed_rangeISE_EEvE4typeELPv0EEEOSE_NS0_15basic_scan_argsINS1_INS0_6detail16buffer_range_tagEwEEEENSL_10locale_refE
Line
Count
Source
2985
99.4k
        : base(SCN_MOVE(a), loc),
2986
99.4k
          m_range(ranges::data(r), ranges::data(r) + ranges::size(r)),
2987
99.4k
          m_current(m_range.begin())
2988
99.4k
    {
2989
99.4k
    }
2990
2991
    constexpr iterator begin() const
2992
203M
    {
2993
203M
        return m_current;
2994
203M
    }
scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char>::begin() const
Line
Count
Source
2992
130k
    {
2993
130k
        return m_current;
2994
130k
    }
scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t>::begin() const
Line
Count
Source
2992
203M
    {
2993
203M
        return m_current;
2994
203M
    }
2995
2996
    constexpr sentinel end() const
2997
407M
    {
2998
407M
        return m_range.end();
2999
407M
    }
scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char>::end() const
Line
Count
Source
2997
125k
    {
2998
125k
        return m_range.end();
2999
125k
    }
scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t>::end() const
Line
Count
Source
2997
407M
    {
2998
407M
        return m_range.end();
2999
407M
    }
3000
3001
    constexpr auto range() const
3002
54.6k
    {
3003
54.6k
        return ranges::subrange{begin(), end()};
3004
54.6k
    }
scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char>::range() const
Line
Count
Source
3002
34.4k
    {
3003
34.4k
        return ranges::subrange{begin(), end()};
3004
34.4k
    }
scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t>::range() const
Line
Count
Source
3002
20.2k
    {
3003
20.2k
        return ranges::subrange{begin(), end()};
3004
20.2k
    }
3005
3006
    constexpr auto underlying_range() const
3007
0
    {
3008
0
        return m_range;
3009
0
    }
Unexecuted instantiation: scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char>::underlying_range() const
Unexecuted instantiation: scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t>::underlying_range() const
3010
3011
    void advance_to(iterator it)
3012
203M
    {
3013
203M
        SCN_EXPECT(it <= end());
3014
203M
        if constexpr (detail::is_comparable_with_nullptr<iterator>) {
3015
203M
            if (it == nullptr) {
3016
0
                it = end();
3017
0
            }
3018
203M
        }
3019
203M
        m_current = SCN_MOVE(it);
3020
203M
    }
scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char>::advance_to(char const*)
Line
Count
Source
3012
46.2k
    {
3013
46.2k
        SCN_EXPECT(it <= end());
3014
46.2k
        if constexpr (detail::is_comparable_with_nullptr<iterator>) {
3015
46.2k
            if (it == nullptr) {
3016
0
                it = end();
3017
0
            }
3018
46.2k
        }
3019
46.2k
        m_current = SCN_MOVE(it);
3020
46.2k
    }
scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t>::advance_to(wchar_t const*)
Line
Count
Source
3012
203M
    {
3013
203M
        SCN_EXPECT(it <= end());
3014
203M
        if constexpr (detail::is_comparable_with_nullptr<iterator>) {
3015
203M
            if (it == nullptr) {
3016
0
                it = end();
3017
0
            }
3018
203M
        }
3019
203M
        m_current = SCN_MOVE(it);
3020
203M
    }
3021
3022
    void advance_to(const typename parent_context_type::iterator& it)
3023
0
    {
3024
0
        SCN_EXPECT(it.position() <= m_range.size());
3025
0
        m_current = m_range.begin() + it.position();
3026
0
    }
Unexecuted instantiation: scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char>::advance_to(scn::v4::detail::basic_scan_buffer<char>::forward_iterator const&)
Unexecuted instantiation: scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t>::advance_to(scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator const&)
3027
3028
    std::ptrdiff_t begin_position()
3029
0
    {
3030
0
        return ranges::distance(m_range.begin(), begin());
3031
0
    }
Unexecuted instantiation: scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char>::begin_position()
Unexecuted instantiation: scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t>::begin_position()
3032
3033
private:
3034
    range_type m_range;
3035
    iterator m_current;
3036
};
3037
3038
namespace impl {
3039
template <typename CharT>
3040
using basic_contiguous_scan_context =
3041
    basic_scan_context<ranges::subrange<const CharT*, const CharT*>, CharT>;
3042
3043
struct reader_error_handler {
3044
    constexpr void on_error(const char* msg)
3045
14.7k
    {
3046
14.7k
        SCN_UNLIKELY_ATTR
3047
14.7k
        m_msg = msg;
3048
14.7k
    }
3049
    explicit constexpr operator bool() const
3050
32.0k
    {
3051
32.0k
        return m_msg == nullptr;
3052
32.0k
    }
3053
3054
    const char* m_msg{nullptr};
3055
};
3056
3057
/////////////////////////////////////////////////////////////////
3058
// General reading support
3059
/////////////////////////////////////////////////////////////////
3060
3061
template <typename SourceRange>
3062
auto skip_classic_whitespace(const SourceRange& range,
3063
                             bool allow_exhaustion = false)
3064
    -> eof_expected<ranges::const_iterator_t<SourceRange>>
3065
17.9k
{
3066
17.9k
    if (!allow_exhaustion) {
3067
16.4k
        auto it = read_while_classic_space(range);
3068
16.4k
        if (auto e = eof_check(ranges::subrange{it, range.end()});
3069
16.4k
            SCN_UNLIKELY(!e)) {
3070
306
            return unexpected(e);
3071
306
        }
3072
3073
16.1k
        return it;
3074
16.4k
    }
3075
3076
1.48k
    return read_while_classic_space(range);
3077
17.9k
}
Unexecuted instantiation: _ZN3scn2v44impl23skip_classic_whitespaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSJ_b
Unexecuted instantiation: _ZN3scn2v44impl23skip_classic_whitespaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_b
Unexecuted instantiation: _ZN3scn2v44impl23skip_classic_whitespaceINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEEEERKSE_b
Unexecuted instantiation: _ZN3scn2v44impl23skip_classic_whitespaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEEEERKSD_b
_ZN3scn2v44impl23skip_classic_whitespaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_b
Line
Count
Source
3065
534
{
3066
534
    if (!allow_exhaustion) {
3067
0
        auto it = read_while_classic_space(range);
3068
0
        if (auto e = eof_check(ranges::subrange{it, range.end()});
3069
0
            SCN_UNLIKELY(!e)) {
3070
0
            return unexpected(e);
3071
0
        }
3072
3073
0
        return it;
3074
0
    }
3075
3076
534
    return read_while_classic_space(range);
3077
534
}
_ZN3scn2v44impl23skip_classic_whitespaceINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSD_b
Line
Count
Source
3065
6.86k
{
3066
6.86k
    if (!allow_exhaustion) {
3067
6.68k
        auto it = read_while_classic_space(range);
3068
6.68k
        if (auto e = eof_check(ranges::subrange{it, range.end()});
3069
6.68k
            SCN_UNLIKELY(!e)) {
3070
0
            return unexpected(e);
3071
0
        }
3072
3073
6.68k
        return it;
3074
6.68k
    }
3075
3076
184
    return read_while_classic_space(range);
3077
6.86k
}
Unexecuted instantiation: _ZN3scn2v44impl23skip_classic_whitespaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSG_b
Unexecuted instantiation: _ZN3scn2v44impl23skip_classic_whitespaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSJ_b
Unexecuted instantiation: _ZN3scn2v44impl23skip_classic_whitespaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_b
Unexecuted instantiation: _ZN3scn2v44impl23skip_classic_whitespaceINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEEEERKSE_b
Unexecuted instantiation: _ZN3scn2v44impl23skip_classic_whitespaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEEEERKSD_b
Unexecuted instantiation: _ZN3scn2v44impl23skip_classic_whitespaceINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEEEERKSB_b
_ZN3scn2v44impl23skip_classic_whitespaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_b
Line
Count
Source
3065
396
{
3066
396
    if (!allow_exhaustion) {
3067
0
        auto it = read_while_classic_space(range);
3068
0
        if (auto e = eof_check(ranges::subrange{it, range.end()});
3069
0
            SCN_UNLIKELY(!e)) {
3070
0
            return unexpected(e);
3071
0
        }
3072
3073
0
        return it;
3074
0
    }
3075
3076
396
    return read_while_classic_space(range);
3077
396
}
_ZN3scn2v44impl23skip_classic_whitespaceINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSD_b
Line
Count
Source
3065
6.66k
{
3066
6.66k
    if (!allow_exhaustion) {
3067
6.29k
        auto it = read_while_classic_space(range);
3068
6.29k
        if (auto e = eof_check(ranges::subrange{it, range.end()});
3069
6.29k
            SCN_UNLIKELY(!e)) {
3070
0
            return unexpected(e);
3071
0
        }
3072
3073
6.29k
        return it;
3074
6.29k
    }
3075
3076
366
    return read_while_classic_space(range);
3077
6.66k
}
Unexecuted instantiation: _ZN3scn2v44impl23skip_classic_whitespaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSG_b
_ZN3scn2v44impl23skip_classic_whitespaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSG_b
Line
Count
Source
3065
2.28k
{
3066
2.28k
    if (!allow_exhaustion) {
3067
2.28k
        auto it = read_while_classic_space(range);
3068
2.28k
        if (auto e = eof_check(ranges::subrange{it, range.end()});
3069
2.28k
            SCN_UNLIKELY(!e)) {
3070
238
            return unexpected(e);
3071
238
        }
3072
3073
2.04k
        return it;
3074
2.28k
    }
3075
3076
0
    return read_while_classic_space(range);
3077
2.28k
}
_ZN3scn2v44impl23skip_classic_whitespaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSG_b
Line
Count
Source
3065
1.17k
{
3066
1.17k
    if (!allow_exhaustion) {
3067
1.17k
        auto it = read_while_classic_space(range);
3068
1.17k
        if (auto e = eof_check(ranges::subrange{it, range.end()});
3069
1.17k
            SCN_UNLIKELY(!e)) {
3070
68
            return unexpected(e);
3071
68
        }
3072
3073
1.10k
        return it;
3074
1.17k
    }
3075
3076
0
    return read_while_classic_space(range);
3077
1.17k
}
Unexecuted instantiation: _ZN3scn2v44impl23skip_classic_whitespaceINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEEEERKSB_b
3078
3079
template <typename SourceCharT, typename DestCharT>
3080
scan_expected<void> transcode_impl(std::basic_string_view<SourceCharT> src,
3081
                                   std::basic_string<DestCharT>& dst)
3082
2.68k
{
3083
2.68k
    dst.clear();
3084
2.68k
    transcode_valid_to_string(src, dst);
3085
2.68k
    return {};
3086
2.68k
}
scn::v4::scan_expected<void> scn::v4::impl::transcode_impl<char, wchar_t>(std::__1::basic_string_view<char, std::__1::char_traits<char> >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
3082
1.63k
{
3083
1.63k
    dst.clear();
3084
1.63k
    transcode_valid_to_string(src, dst);
3085
1.63k
    return {};
3086
1.63k
}
scn::v4::scan_expected<void> scn::v4::impl::transcode_impl<wchar_t, char>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
3082
1.05k
{
3083
1.05k
    dst.clear();
3084
1.05k
    transcode_valid_to_string(src, dst);
3085
1.05k
    return {};
3086
1.05k
}
3087
3088
template <typename SourceCharT, typename DestCharT>
3089
scan_expected<void> transcode_if_necessary(
3090
    const contiguous_range_factory<SourceCharT>& source,
3091
    std::basic_string<DestCharT>& dest)
3092
{
3093
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3094
        dest.assign(source.view());
3095
    }
3096
    else {
3097
        return transcode_impl(source.view(), dest);
3098
    }
3099
3100
    return {};
3101
}
3102
3103
template <typename SourceCharT, typename DestCharT>
3104
scan_expected<void> transcode_if_necessary(
3105
    contiguous_range_factory<SourceCharT>&& source,
3106
    std::basic_string<DestCharT>& dest)
3107
1.44k
{
3108
1.44k
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3109
720
        if (source.stores_allocated_string()) {
3110
720
            dest.assign(SCN_MOVE(source.get_allocated_string()));
3111
720
        }
3112
0
        else {
3113
0
            dest.assign(source.view());
3114
0
        }
3115
    }
3116
720
    else {
3117
720
        return transcode_impl(source.view(), dest);
3118
720
    }
3119
3120
0
    return {};
3121
1.44k
}
scn::v4::scan_expected<void> scn::v4::impl::transcode_if_necessary<char, char>(scn::v4::impl::contiguous_range_factory<char>&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
3107
456
{
3108
456
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3109
456
        if (source.stores_allocated_string()) {
3110
456
            dest.assign(SCN_MOVE(source.get_allocated_string()));
3111
456
        }
3112
0
        else {
3113
0
            dest.assign(source.view());
3114
0
        }
3115
    }
3116
    else {
3117
        return transcode_impl(source.view(), dest);
3118
    }
3119
3120
456
    return {};
3121
456
}
scn::v4::scan_expected<void> scn::v4::impl::transcode_if_necessary<char, wchar_t>(scn::v4::impl::contiguous_range_factory<char>&&, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
3107
456
{
3108
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3109
        if (source.stores_allocated_string()) {
3110
            dest.assign(SCN_MOVE(source.get_allocated_string()));
3111
        }
3112
        else {
3113
            dest.assign(source.view());
3114
        }
3115
    }
3116
456
    else {
3117
456
        return transcode_impl(source.view(), dest);
3118
456
    }
3119
3120
0
    return {};
3121
456
}
scn::v4::scan_expected<void> scn::v4::impl::transcode_if_necessary<wchar_t, char>(scn::v4::impl::contiguous_range_factory<wchar_t>&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
3107
264
{
3108
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3109
        if (source.stores_allocated_string()) {
3110
            dest.assign(SCN_MOVE(source.get_allocated_string()));
3111
        }
3112
        else {
3113
            dest.assign(source.view());
3114
        }
3115
    }
3116
264
    else {
3117
264
        return transcode_impl(source.view(), dest);
3118
264
    }
3119
3120
0
    return {};
3121
264
}
scn::v4::scan_expected<void> scn::v4::impl::transcode_if_necessary<wchar_t, wchar_t>(scn::v4::impl::contiguous_range_factory<wchar_t>&&, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
3107
264
{
3108
264
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3109
264
        if (source.stores_allocated_string()) {
3110
264
            dest.assign(SCN_MOVE(source.get_allocated_string()));
3111
264
        }
3112
0
        else {
3113
0
            dest.assign(source.view());
3114
0
        }
3115
    }
3116
    else {
3117
        return transcode_impl(source.view(), dest);
3118
    }
3119
3120
264
    return {};
3121
264
}
3122
3123
template <typename SourceCharT, typename DestCharT>
3124
scan_expected<void> transcode_if_necessary(
3125
    string_view_wrapper<SourceCharT> source,
3126
    std::basic_string<DestCharT>& dest)
3127
3.92k
{
3128
3.92k
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3129
1.96k
        dest.assign(source.view());
3130
    }
3131
1.96k
    else {
3132
1.96k
        return transcode_impl(source.view(), dest);
3133
1.96k
    }
3134
3135
0
    return {};
3136
3.92k
}
scn::v4::scan_expected<void> scn::v4::impl::transcode_if_necessary<char, char>(scn::v4::impl::string_view_wrapper<char>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
3127
1.17k
{
3128
1.17k
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3129
1.17k
        dest.assign(source.view());
3130
    }
3131
    else {
3132
        return transcode_impl(source.view(), dest);
3133
    }
3134
3135
1.17k
    return {};
3136
1.17k
}
scn::v4::scan_expected<void> scn::v4::impl::transcode_if_necessary<char, wchar_t>(scn::v4::impl::string_view_wrapper<char>, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
3127
1.17k
{
3128
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3129
        dest.assign(source.view());
3130
    }
3131
1.17k
    else {
3132
1.17k
        return transcode_impl(source.view(), dest);
3133
1.17k
    }
3134
3135
0
    return {};
3136
1.17k
}
scn::v4::scan_expected<void> scn::v4::impl::transcode_if_necessary<wchar_t, char>(scn::v4::impl::string_view_wrapper<wchar_t>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
3127
786
{
3128
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3129
        dest.assign(source.view());
3130
    }
3131
786
    else {
3132
786
        return transcode_impl(source.view(), dest);
3133
786
    }
3134
3135
0
    return {};
3136
786
}
scn::v4::scan_expected<void> scn::v4::impl::transcode_if_necessary<wchar_t, wchar_t>(scn::v4::impl::string_view_wrapper<wchar_t>, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
3127
786
{
3128
786
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3129
786
        dest.assign(source.view());
3130
    }
3131
    else {
3132
        return transcode_impl(source.view(), dest);
3133
    }
3134
3135
786
    return {};
3136
786
}
3137
3138
/////////////////////////////////////////////////////////////////
3139
// Reader base classes etc.
3140
/////////////////////////////////////////////////////////////////
3141
3142
template <typename Derived, typename CharT>
3143
class reader_base {
3144
public:
3145
    using char_type = CharT;
3146
3147
    constexpr reader_base() = default;
3148
3149
    bool skip_ws_before_read() const
3150
10.2k
    {
3151
10.2k
        return true;
3152
10.2k
    }
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_int<char>, char>::skip_ws_before_read() const
Line
Count
Source
3150
2.58k
    {
3151
2.58k
        return true;
3152
2.58k
    }
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_float<char>, char>::skip_ws_before_read() const
Line
Count
Source
3150
1.30k
    {
3151
1.30k
        return true;
3152
1.30k
    }
Unexecuted instantiation: scn::v4::impl::reader_base<scn::v4::impl::regex_matches_reader<char>, char>::skip_ws_before_read() const
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_int<wchar_t>, wchar_t>::skip_ws_before_read() const
Line
Count
Source
3150
2.33k
    {
3151
2.33k
        return true;
3152
2.33k
    }
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_float<wchar_t>, wchar_t>::skip_ws_before_read() const
Line
Count
Source
3150
1.23k
    {
3151
1.23k
        return true;
3152
1.23k
    }
Unexecuted instantiation: scn::v4::impl::reader_base<scn::v4::impl::regex_matches_reader<wchar_t>, wchar_t>::skip_ws_before_read() const
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_bool<char>, char>::skip_ws_before_read() const
Line
Count
Source
3150
1.54k
    {
3151
1.54k
        return true;
3152
1.54k
    }
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_bool<wchar_t>, wchar_t>::skip_ws_before_read() const
Line
Count
Source
3150
1.25k
    {
3151
1.25k
        return true;
3152
1.25k
    }
3153
3154
    scan_expected<void> check_specs(const detail::format_specs& specs)
3155
25.0k
    {
3156
25.0k
        reader_error_handler eh{};
3157
25.0k
        get_derived().check_specs_impl(specs, eh);
3158
25.0k
        if (SCN_UNLIKELY(!eh)) {
3159
10.0k
            return detail::unexpected_scan_error(
3160
10.0k
                scan_error::invalid_format_string, eh.m_msg);
3161
10.0k
        }
3162
15.0k
        return {};
3163
25.0k
    }
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_int<char>, char>::check_specs(scn::v4::detail::format_specs const&)
Line
Count
Source
3155
4.83k
    {
3156
4.83k
        reader_error_handler eh{};
3157
4.83k
        get_derived().check_specs_impl(specs, eh);
3158
4.83k
        if (SCN_UNLIKELY(!eh)) {
3159
3.49k
            return detail::unexpected_scan_error(
3160
3.49k
                scan_error::invalid_format_string, eh.m_msg);
3161
3.49k
        }
3162
1.33k
        return {};
3163
4.83k
    }
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_float<char>, char>::check_specs(scn::v4::detail::format_specs const&)
Line
Count
Source
3155
2.41k
    {
3156
2.41k
        reader_error_handler eh{};
3157
2.41k
        get_derived().check_specs_impl(specs, eh);
3158
2.41k
        if (SCN_UNLIKELY(!eh)) {
3159
1.73k
            return detail::unexpected_scan_error(
3160
1.73k
                scan_error::invalid_format_string, eh.m_msg);
3161
1.73k
        }
3162
680
        return {};
3163
2.41k
    }
scn::v4::impl::reader_base<scn::v4::impl::string_reader<char>, char>::check_specs(scn::v4::detail::format_specs const&)
Line
Count
Source
3155
7.12k
    {
3156
7.12k
        reader_error_handler eh{};
3157
7.12k
        get_derived().check_specs_impl(specs, eh);
3158
7.12k
        if (SCN_UNLIKELY(!eh)) {
3159
432
            return detail::unexpected_scan_error(
3160
432
                scan_error::invalid_format_string, eh.m_msg);
3161
432
        }
3162
6.69k
        return {};
3163
7.12k
    }
Unexecuted instantiation: scn::v4::impl::reader_base<scn::v4::impl::regex_matches_reader<char>, char>::check_specs(scn::v4::detail::format_specs const&)
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_int<wchar_t>, wchar_t>::check_specs(scn::v4::detail::format_specs const&)
Line
Count
Source
3155
2.41k
    {
3156
2.41k
        reader_error_handler eh{};
3157
2.41k
        get_derived().check_specs_impl(specs, eh);
3158
2.41k
        if (SCN_UNLIKELY(!eh)) {
3159
1.15k
            return detail::unexpected_scan_error(
3160
1.15k
                scan_error::invalid_format_string, eh.m_msg);
3161
1.15k
        }
3162
1.25k
        return {};
3163
2.41k
    }
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_float<wchar_t>, wchar_t>::check_specs(scn::v4::detail::format_specs const&)
Line
Count
Source
3155
1.20k
    {
3156
1.20k
        reader_error_handler eh{};
3157
1.20k
        get_derived().check_specs_impl(specs, eh);
3158
1.20k
        if (SCN_UNLIKELY(!eh)) {
3159
554
            return detail::unexpected_scan_error(
3160
554
                scan_error::invalid_format_string, eh.m_msg);
3161
554
        }
3162
652
        return {};
3163
1.20k
    }
scn::v4::impl::reader_base<scn::v4::impl::string_reader<wchar_t>, wchar_t>::check_specs(scn::v4::detail::format_specs const&)
Line
Count
Source
3155
3.44k
    {
3156
3.44k
        reader_error_handler eh{};
3157
3.44k
        get_derived().check_specs_impl(specs, eh);
3158
3.44k
        if (SCN_UNLIKELY(!eh)) {
3159
666
            return detail::unexpected_scan_error(
3160
666
                scan_error::invalid_format_string, eh.m_msg);
3161
666
        }
3162
2.77k
        return {};
3163
3.44k
    }
Unexecuted instantiation: scn::v4::impl::reader_base<scn::v4::impl::regex_matches_reader<wchar_t>, wchar_t>::check_specs(scn::v4::detail::format_specs const&)
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_bool<char>, char>::check_specs(scn::v4::detail::format_specs const&)
Line
Count
Source
3155
2.41k
    {
3156
2.41k
        reader_error_handler eh{};
3157
2.41k
        get_derived().check_specs_impl(specs, eh);
3158
2.41k
        if (SCN_UNLIKELY(!eh)) {
3159
1.49k
            return detail::unexpected_scan_error(
3160
1.49k
                scan_error::invalid_format_string, eh.m_msg);
3161
1.49k
        }
3162
922
        return {};
3163
2.41k
    }
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_bool<wchar_t>, wchar_t>::check_specs(scn::v4::detail::format_specs const&)
Line
Count
Source
3155
1.20k
    {
3156
1.20k
        reader_error_handler eh{};
3157
1.20k
        get_derived().check_specs_impl(specs, eh);
3158
1.20k
        if (SCN_UNLIKELY(!eh)) {
3159
494
            return detail::unexpected_scan_error(
3160
494
                scan_error::invalid_format_string, eh.m_msg);
3161
494
        }
3162
712
        return {};
3163
1.20k
    }
3164
3165
private:
3166
    Derived& get_derived()
3167
25.0k
    {
3168
25.0k
        return static_cast<Derived&>(*this);
3169
25.0k
    }
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_int<char>, char>::get_derived()
Line
Count
Source
3167
4.83k
    {
3168
4.83k
        return static_cast<Derived&>(*this);
3169
4.83k
    }
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_float<char>, char>::get_derived()
Line
Count
Source
3167
2.41k
    {
3168
2.41k
        return static_cast<Derived&>(*this);
3169
2.41k
    }
scn::v4::impl::reader_base<scn::v4::impl::string_reader<char>, char>::get_derived()
Line
Count
Source
3167
7.12k
    {
3168
7.12k
        return static_cast<Derived&>(*this);
3169
7.12k
    }
Unexecuted instantiation: scn::v4::impl::reader_base<scn::v4::impl::regex_matches_reader<char>, char>::get_derived()
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_int<wchar_t>, wchar_t>::get_derived()
Line
Count
Source
3167
2.41k
    {
3168
2.41k
        return static_cast<Derived&>(*this);
3169
2.41k
    }
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_float<wchar_t>, wchar_t>::get_derived()
Line
Count
Source
3167
1.20k
    {
3168
1.20k
        return static_cast<Derived&>(*this);
3169
1.20k
    }
scn::v4::impl::reader_base<scn::v4::impl::string_reader<wchar_t>, wchar_t>::get_derived()
Line
Count
Source
3167
3.44k
    {
3168
3.44k
        return static_cast<Derived&>(*this);
3169
3.44k
    }
Unexecuted instantiation: scn::v4::impl::reader_base<scn::v4::impl::regex_matches_reader<wchar_t>, wchar_t>::get_derived()
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_bool<char>, char>::get_derived()
Line
Count
Source
3167
2.41k
    {
3168
2.41k
        return static_cast<Derived&>(*this);
3169
2.41k
    }
scn::v4::impl::reader_base<scn::v4::impl::reader_impl_for_bool<wchar_t>, wchar_t>::get_derived()
Line
Count
Source
3167
1.20k
    {
3168
1.20k
        return static_cast<Derived&>(*this);
3169
1.20k
    }
3170
    const Derived& get_derived() const
3171
    {
3172
        return static_cast<const Derived&>(*this);
3173
    }
3174
};
3175
3176
template <typename CharT>
3177
class reader_impl_for_monostate {
3178
public:
3179
    constexpr reader_impl_for_monostate() = default;
3180
3181
    bool skip_ws_before_read() const
3182
0
    {
3183
0
        return true;
3184
0
    }
Unexecuted instantiation: scn::v4::impl::reader_impl_for_monostate<char>::skip_ws_before_read() const
Unexecuted instantiation: scn::v4::impl::reader_impl_for_monostate<wchar_t>::skip_ws_before_read() const
3185
3186
    static scan_expected<void> check_specs(const detail::format_specs&)
3187
0
    {
3188
0
        SCN_EXPECT(false);
3189
0
        SCN_UNREACHABLE;
3190
0
    }
Unexecuted instantiation: scn::v4::impl::reader_impl_for_monostate<char>::check_specs(scn::v4::detail::format_specs const&)
Unexecuted instantiation: scn::v4::impl::reader_impl_for_monostate<wchar_t>::check_specs(scn::v4::detail::format_specs const&)
3191
3192
    template <typename Range>
3193
    auto read_default(Range, monostate&, detail::locale_ref)
3194
        -> scan_expected<ranges::const_iterator_t<Range>>
3195
0
    {
3196
0
        SCN_EXPECT(false);
3197
0
        SCN_UNREACHABLE;
3198
0
    }
Unexecuted instantiation: _ZN3scn2v44impl25reader_impl_for_monostateIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS0_9monostateENS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl25reader_impl_for_monostateIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS0_9monostateENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl25reader_impl_for_monostateIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS0_9monostateENS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl25reader_impl_for_monostateIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS0_9monostateENS9_10locale_refE
3199
3200
    template <typename Range>
3201
    auto read_specs(Range,
3202
                    const detail::format_specs&,
3203
                    monostate&,
3204
                    detail::locale_ref)
3205
        -> scan_expected<ranges::const_iterator_t<Range>>
3206
0
    {
3207
0
        SCN_EXPECT(false);
3208
0
        SCN_UNREACHABLE;
3209
0
    }
Unexecuted instantiation: _ZN3scn2v44impl25reader_impl_for_monostateIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNS0_9monostateENSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl25reader_impl_for_monostateIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNS0_9monostateENSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl25reader_impl_for_monostateIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNS0_9monostateENSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl25reader_impl_for_monostateIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNS0_9monostateENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl25reader_impl_for_monostateIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNS0_9monostateENSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl25reader_impl_for_monostateIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNS0_9monostateENSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl25reader_impl_for_monostateIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNS0_9monostateENSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl25reader_impl_for_monostateIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNS0_9monostateENS9_10locale_refE
3210
};
3211
3212
/////////////////////////////////////////////////////////////////
3213
// Numeric reader support
3214
/////////////////////////////////////////////////////////////////
3215
3216
enum class sign_type { default_sign = -1, minus_sign = 0, plus_sign = 1 };
3217
3218
inline constexpr std::array<uint8_t, 256> char_to_int_table = {
3219
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3220
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3221
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3222
    255, 255, 255, 0,   1,   2,   3,   4,   5,   6,   7,   8,   9,   255, 255,
3223
    255, 255, 255, 255, 255, 10,  11,  12,  13,  14,  15,  16,  17,  18,  19,
3224
    20,  21,  22,  23,  24,  25,  26,  27,  28,  29,  30,  31,  32,  33,  34,
3225
    35,  255, 255, 255, 255, 255, 255, 10,  11,  12,  13,  14,  15,  16,  17,
3226
    18,  19,  20,  21,  22,  23,  24,  25,  26,  27,  28,  29,  30,  31,  32,
3227
    33,  34,  35,  255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3228
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3229
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3230
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3231
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3232
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3233
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3234
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3235
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3236
    255};
3237
3238
SCN_NODISCARD SCN_FORCE_INLINE constexpr uint8_t char_to_int(char ch)
3239
16.5k
{
3240
16.5k
    return char_to_int_table[static_cast<unsigned char>(ch)];
3241
16.5k
}
3242
SCN_NODISCARD SCN_FORCE_INLINE constexpr uint8_t char_to_int(wchar_t ch)
3243
7.85k
{
3244
7.85k
#if WCHAR_MIN < 0
3245
7.85k
    if (ch >= 0 && ch <= 255) {
3246
#else
3247
    if (ch <= 255) {
3248
#endif
3249
7.78k
        return char_to_int(static_cast<char>(ch));
3250
7.78k
    }
3251
72
    return 255;
3252
7.85k
}
3253
3254
template <typename Range>
3255
auto parse_numeric_sign(Range range)
3256
    -> eof_expected<std::pair<ranges::const_iterator_t<Range>, sign_type>>
3257
9.36k
{
3258
9.36k
    auto r = read_one_of_code_unit(range, "+-");
3259
9.36k
    if (!r) {
3260
9.36k
        if (r.error() == parse_error::error) {
3261
9.36k
            return std::pair{range.begin(), sign_type::default_sign};
3262
9.36k
        }
3263
0
        return unexpected(eof_error::eof);
3264
9.36k
    }
3265
3266
0
    auto& it = *r;
3267
0
    if (*range.begin() == '-') {
3268
0
        return std::pair{it, sign_type::minus_sign};
3269
0
    }
3270
0
    return std::pair{it, sign_type::plus_sign};
3271
0
}
Unexecuted instantiation: _ZN3scn2v44impl18parse_numeric_signINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSG_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESJ_
Unexecuted instantiation: _ZN3scn2v44impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESH_
_ZN3scn2v44impl18parse_numeric_signINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESG_
Line
Count
Source
3257
1.40k
{
3258
1.40k
    auto r = read_one_of_code_unit(range, "+-");
3259
1.40k
    if (!r) {
3260
1.40k
        if (r.error() == parse_error::error) {
3261
1.40k
            return std::pair{range.begin(), sign_type::default_sign};
3262
1.40k
        }
3263
0
        return unexpected(eof_error::eof);
3264
1.40k
    }
3265
3266
0
    auto& it = *r;
3267
0
    if (*range.begin() == '-') {
3268
0
        return std::pair{it, sign_type::minus_sign};
3269
0
    }
3270
0
    return std::pair{it, sign_type::plus_sign};
3271
0
}
_ZN3scn2v44impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSB_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESE_
Line
Count
Source
3257
3.62k
{
3258
3.62k
    auto r = read_one_of_code_unit(range, "+-");
3259
3.62k
    if (!r) {
3260
3.62k
        if (r.error() == parse_error::error) {
3261
3.62k
            return std::pair{range.begin(), sign_type::default_sign};
3262
3.62k
        }
3263
0
        return unexpected(eof_error::eof);
3264
3.62k
    }
3265
3266
0
    auto& it = *r;
3267
0
    if (*range.begin() == '-') {
3268
0
        return std::pair{it, sign_type::minus_sign};
3269
0
    }
3270
0
    return std::pair{it, sign_type::plus_sign};
3271
0
}
Unexecuted instantiation: _ZN3scn2v44impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSM_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESP_
Unexecuted instantiation: _ZN3scn2v44impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSJ_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESM_
Unexecuted instantiation: _ZN3scn2v44impl18parse_numeric_signINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSG_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESJ_
Unexecuted instantiation: _ZN3scn2v44impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESH_
_ZN3scn2v44impl18parse_numeric_signINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESG_
Line
Count
Source
3257
806
{
3258
806
    auto r = read_one_of_code_unit(range, "+-");
3259
806
    if (!r) {
3260
806
        if (r.error() == parse_error::error) {
3261
806
            return std::pair{range.begin(), sign_type::default_sign};
3262
806
        }
3263
0
        return unexpected(eof_error::eof);
3264
806
    }
3265
3266
0
    auto& it = *r;
3267
0
    if (*range.begin() == '-') {
3268
0
        return std::pair{it, sign_type::minus_sign};
3269
0
    }
3270
0
    return std::pair{it, sign_type::plus_sign};
3271
0
}
_ZN3scn2v44impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSB_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESE_
Line
Count
Source
3257
3.54k
{
3258
3.54k
    auto r = read_one_of_code_unit(range, "+-");
3259
3.54k
    if (!r) {
3260
3.54k
        if (r.error() == parse_error::error) {
3261
3.54k
            return std::pair{range.begin(), sign_type::default_sign};
3262
3.54k
        }
3263
0
        return unexpected(eof_error::eof);
3264
3.54k
    }
3265
3266
0
    auto& it = *r;
3267
0
    if (*range.begin() == '-') {
3268
0
        return std::pair{it, sign_type::minus_sign};
3269
0
    }
3270
0
    return std::pair{it, sign_type::plus_sign};
3271
0
}
Unexecuted instantiation: _ZN3scn2v44impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSM_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESP_
Unexecuted instantiation: _ZN3scn2v44impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSJ_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESM_
3272
3273
template <typename CharT>
3274
class numeric_reader {
3275
public:
3276
    contiguous_range_factory<CharT> m_buffer{};
3277
};
3278
3279
/////////////////////////////////////////////////////////////////
3280
// Integer reader
3281
/////////////////////////////////////////////////////////////////
3282
3283
template <typename Iterator>
3284
struct parse_integer_prefix_result {
3285
    SCN_NO_UNIQUE_ADDRESS Iterator iterator;
3286
    int parsed_base{0};
3287
    sign_type sign{sign_type::default_sign};
3288
    bool is_zero{false};
3289
};
3290
3291
template <typename Range>
3292
auto parse_integer_bin_base_prefix(Range range)
3293
    -> parse_expected<ranges::const_iterator_t<Range>>
3294
200
{
3295
200
    return read_matching_string_classic_nocase(range, "0b");
3296
200
}
Unexecuted instantiation: _ZN3scn2v44impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_
Unexecuted instantiation: _ZN3scn2v44impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_
_ZN3scn2v44impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_
Line
Count
Source
3294
40
{
3295
40
    return read_matching_string_classic_nocase(range, "0b");
3296
40
}
_ZN3scn2v44impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_
Line
Count
Source
3294
22
{
3295
22
    return read_matching_string_classic_nocase(range, "0b");
3296
22
}
Unexecuted instantiation: _ZN3scn2v44impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_
Unexecuted instantiation: _ZN3scn2v44impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_
_ZN3scn2v44impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_
Line
Count
Source
3294
46
{
3295
46
    return read_matching_string_classic_nocase(range, "0b");
3296
46
}
_ZN3scn2v44impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_
Line
Count
Source
3294
92
{
3295
92
    return read_matching_string_classic_nocase(range, "0b");
3296
92
}
3297
3298
template <typename Range>
3299
auto parse_integer_hex_base_prefix(Range range)
3300
    -> parse_expected<ranges::const_iterator_t<Range>>
3301
2.33k
{
3302
2.33k
    return read_matching_string_classic_nocase(range, "0x");
3303
2.33k
}
Unexecuted instantiation: _ZN3scn2v44impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_
Unexecuted instantiation: _ZN3scn2v44impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_
_ZN3scn2v44impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_
Line
Count
Source
3301
354
{
3302
354
    return read_matching_string_classic_nocase(range, "0x");
3303
354
}
_ZN3scn2v44impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_
Line
Count
Source
3301
906
{
3302
906
    return read_matching_string_classic_nocase(range, "0x");
3303
906
}
Unexecuted instantiation: _ZN3scn2v44impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_
Unexecuted instantiation: _ZN3scn2v44impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_
_ZN3scn2v44impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_
Line
Count
Source
3301
206
{
3302
206
    return read_matching_string_classic_nocase(range, "0x");
3303
206
}
_ZN3scn2v44impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_
Line
Count
Source
3301
864
{
3302
864
    return read_matching_string_classic_nocase(range, "0x");
3303
864
}
3304
3305
template <typename Range>
3306
auto parse_integer_oct_base_prefix(Range range, bool& zero_parsed)
3307
    -> parse_expected<ranges::const_iterator_t<Range>>
3308
192
{
3309
192
    if (auto r = read_matching_string_classic_nocase(range, "0o")) {
3310
0
        return *r;
3311
0
    }
3312
3313
192
    if (auto r = read_matching_code_unit(range, '0')) {
3314
34
        zero_parsed = true;
3315
34
        return *r;
3316
34
    }
3317
3318
158
    return unexpected(parse_error::error);
3319
192
}
Unexecuted instantiation: _ZN3scn2v44impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_Rb
Unexecuted instantiation: _ZN3scn2v44impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
_ZN3scn2v44impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_Rb
Line
Count
Source
3308
40
{
3309
40
    if (auto r = read_matching_string_classic_nocase(range, "0o")) {
3310
0
        return *r;
3311
0
    }
3312
3313
40
    if (auto r = read_matching_code_unit(range, '0')) {
3314
0
        zero_parsed = true;
3315
0
        return *r;
3316
0
    }
3317
3318
40
    return unexpected(parse_error::error);
3319
40
}
_ZN3scn2v44impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_Rb
Line
Count
Source
3308
42
{
3309
42
    if (auto r = read_matching_string_classic_nocase(range, "0o")) {
3310
0
        return *r;
3311
0
    }
3312
3313
42
    if (auto r = read_matching_code_unit(range, '0')) {
3314
0
        zero_parsed = true;
3315
0
        return *r;
3316
0
    }
3317
3318
42
    return unexpected(parse_error::error);
3319
42
}
Unexecuted instantiation: _ZN3scn2v44impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_Rb
Unexecuted instantiation: _ZN3scn2v44impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
_ZN3scn2v44impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_Rb
Line
Count
Source
3308
62
{
3309
62
    if (auto r = read_matching_string_classic_nocase(range, "0o")) {
3310
0
        return *r;
3311
0
    }
3312
3313
62
    if (auto r = read_matching_code_unit(range, '0')) {
3314
18
        zero_parsed = true;
3315
18
        return *r;
3316
18
    }
3317
3318
44
    return unexpected(parse_error::error);
3319
62
}
_ZN3scn2v44impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_Rb
Line
Count
Source
3308
48
{
3309
48
    if (auto r = read_matching_string_classic_nocase(range, "0o")) {
3310
0
        return *r;
3311
0
    }
3312
3313
48
    if (auto r = read_matching_code_unit(range, '0')) {
3314
16
        zero_parsed = true;
3315
16
        return *r;
3316
16
    }
3317
3318
32
    return unexpected(parse_error::error);
3319
48
}
3320
3321
template <typename Range>
3322
auto parse_integer_base_prefix_for_detection(Range range)
3323
    -> std::tuple<ranges::const_iterator_t<Range>, int, bool>
3324
108
{
3325
108
    if (auto r = parse_integer_hex_base_prefix(range)) {
3326
0
        return {*r, 16, false};
3327
0
    }
3328
108
    if (auto r = parse_integer_bin_base_prefix(range)) {
3329
0
        return {*r, 2, false};
3330
0
    }
3331
108
    {
3332
108
        bool zero_parsed{false};
3333
108
        if (auto r = parse_integer_oct_base_prefix(range, zero_parsed)) {
3334
22
            return {*r, 8, zero_parsed};
3335
22
        }
3336
108
    }
3337
86
    return {range.begin(), 10, false};
3338
108
}
Unexecuted instantiation: _ZN3scn2v44impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSL_9add_constIT_E4typeEEEEEibEEESO_
Unexecuted instantiation: _ZN3scn2v44impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEibEEESG_
_ZN3scn2v44impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSI_9add_constIT_E4typeEEEEEibEEESL_
Line
Count
Source
3324
26
{
3325
26
    if (auto r = parse_integer_hex_base_prefix(range)) {
3326
0
        return {*r, 16, false};
3327
0
    }
3328
26
    if (auto r = parse_integer_bin_base_prefix(range)) {
3329
0
        return {*r, 2, false};
3330
0
    }
3331
26
    {
3332
26
        bool zero_parsed{false};
3333
26
        if (auto r = parse_integer_oct_base_prefix(range, zero_parsed)) {
3334
0
            return {*r, 8, zero_parsed};
3335
0
        }
3336
26
    }
3337
26
    return {range.begin(), 10, false};
3338
26
}
_ZN3scn2v44impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEEibEEESD_
Line
Count
Source
3324
16
{
3325
16
    if (auto r = parse_integer_hex_base_prefix(range)) {
3326
0
        return {*r, 16, false};
3327
0
    }
3328
16
    if (auto r = parse_integer_bin_base_prefix(range)) {
3329
0
        return {*r, 2, false};
3330
0
    }
3331
16
    {
3332
16
        bool zero_parsed{false};
3333
16
        if (auto r = parse_integer_oct_base_prefix(range, zero_parsed)) {
3334
0
            return {*r, 8, zero_parsed};
3335
0
        }
3336
16
    }
3337
16
    return {range.begin(), 10, false};
3338
16
}
Unexecuted instantiation: _ZN3scn2v44impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSL_9add_constIT_E4typeEEEEEibEEESO_
Unexecuted instantiation: _ZN3scn2v44impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEibEEESG_
_ZN3scn2v44impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSI_9add_constIT_E4typeEEEEEibEEESL_
Line
Count
Source
3324
34
{
3325
34
    if (auto r = parse_integer_hex_base_prefix(range)) {
3326
0
        return {*r, 16, false};
3327
0
    }
3328
34
    if (auto r = parse_integer_bin_base_prefix(range)) {
3329
0
        return {*r, 2, false};
3330
0
    }
3331
34
    {
3332
34
        bool zero_parsed{false};
3333
34
        if (auto r = parse_integer_oct_base_prefix(range, zero_parsed)) {
3334
12
            return {*r, 8, zero_parsed};
3335
12
        }
3336
34
    }
3337
22
    return {range.begin(), 10, false};
3338
34
}
_ZN3scn2v44impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEEibEEESD_
Line
Count
Source
3324
32
{
3325
32
    if (auto r = parse_integer_hex_base_prefix(range)) {
3326
0
        return {*r, 16, false};
3327
0
    }
3328
32
    if (auto r = parse_integer_bin_base_prefix(range)) {
3329
0
        return {*r, 2, false};
3330
0
    }
3331
32
    {
3332
32
        bool zero_parsed{false};
3333
32
        if (auto r = parse_integer_oct_base_prefix(range, zero_parsed)) {
3334
10
            return {*r, 8, zero_parsed};
3335
10
        }
3336
32
    }
3337
22
    return {range.begin(), 10, false};
3338
32
}
3339
3340
template <typename Range>
3341
auto parse_integer_base_prefix(Range range, int base)
3342
    -> std::tuple<ranges::const_iterator_t<Range>, int, bool>
3343
6.98k
{
3344
6.98k
    switch (base) {
3345
92
        case 2:
3346
            // allow 0b/0B
3347
92
            return {apply_opt(parse_integer_bin_base_prefix(range), range), 2,
3348
92
                    false};
3349
3350
84
        case 8: {
3351
            // allow 0o/0O/0
3352
84
            bool zero_parsed = false;
3353
84
            auto it = apply_opt(
3354
84
                parse_integer_oct_base_prefix(range, zero_parsed), range);
3355
84
            return {it, 8, zero_parsed};
3356
0
        }
3357
3358
2.22k
        case 16:
3359
            // allow 0x/0X
3360
2.22k
            return {apply_opt(parse_integer_hex_base_prefix(range), range), 16,
3361
2.22k
                    false};
3362
3363
108
        case 0:
3364
            // detect base
3365
108
            return parse_integer_base_prefix_for_detection(range);
3366
3367
4.48k
        default:
3368
            // no base prefix allowed
3369
4.48k
            return {range.begin(), base, false};
3370
6.98k
    }
3371
6.98k
}
Unexecuted instantiation: _ZN3scn2v44impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSL_9add_constIT_E4typeEEEEEibEEESO_i
Unexecuted instantiation: _ZN3scn2v44impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEibEEESG_i
_ZN3scn2v44impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSI_9add_constIT_E4typeEEEEEibEEESL_i
Line
Count
Source
3343
1.04k
{
3344
1.04k
    switch (base) {
3345
14
        case 2:
3346
            // allow 0b/0B
3347
14
            return {apply_opt(parse_integer_bin_base_prefix(range), range), 2,
3348
14
                    false};
3349
3350
14
        case 8: {
3351
            // allow 0o/0O/0
3352
14
            bool zero_parsed = false;
3353
14
            auto it = apply_opt(
3354
14
                parse_integer_oct_base_prefix(range, zero_parsed), range);
3355
14
            return {it, 8, zero_parsed};
3356
0
        }
3357
3358
328
        case 16:
3359
            // allow 0x/0X
3360
328
            return {apply_opt(parse_integer_hex_base_prefix(range), range), 16,
3361
328
                    false};
3362
3363
26
        case 0:
3364
            // detect base
3365
26
            return parse_integer_base_prefix_for_detection(range);
3366
3367
660
        default:
3368
            // no base prefix allowed
3369
660
            return {range.begin(), base, false};
3370
1.04k
    }
3371
1.04k
}
_ZN3scn2v44impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEEibEEESD_i
Line
Count
Source
3343
2.71k
{
3344
2.71k
    switch (base) {
3345
6
        case 2:
3346
            // allow 0b/0B
3347
6
            return {apply_opt(parse_integer_bin_base_prefix(range), range), 2,
3348
6
                    false};
3349
3350
26
        case 8: {
3351
            // allow 0o/0O/0
3352
26
            bool zero_parsed = false;
3353
26
            auto it = apply_opt(
3354
26
                parse_integer_oct_base_prefix(range, zero_parsed), range);
3355
26
            return {it, 8, zero_parsed};
3356
0
        }
3357
3358
890
        case 16:
3359
            // allow 0x/0X
3360
890
            return {apply_opt(parse_integer_hex_base_prefix(range), range), 16,
3361
890
                    false};
3362
3363
16
        case 0:
3364
            // detect base
3365
16
            return parse_integer_base_prefix_for_detection(range);
3366
3367
1.77k
        default:
3368
            // no base prefix allowed
3369
1.77k
            return {range.begin(), base, false};
3370
2.71k
    }
3371
2.71k
}
Unexecuted instantiation: _ZN3scn2v44impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSL_9add_constIT_E4typeEEEEEibEEESO_i
Unexecuted instantiation: _ZN3scn2v44impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEibEEESG_i
_ZN3scn2v44impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSI_9add_constIT_E4typeEEEEEibEEESL_i
Line
Count
Source
3343
612
{
3344
612
    switch (base) {
3345
12
        case 2:
3346
            // allow 0b/0B
3347
12
            return {apply_opt(parse_integer_bin_base_prefix(range), range), 2,
3348
12
                    false};
3349
3350
28
        case 8: {
3351
            // allow 0o/0O/0
3352
28
            bool zero_parsed = false;
3353
28
            auto it = apply_opt(
3354
28
                parse_integer_oct_base_prefix(range, zero_parsed), range);
3355
28
            return {it, 8, zero_parsed};
3356
0
        }
3357
3358
172
        case 16:
3359
            // allow 0x/0X
3360
172
            return {apply_opt(parse_integer_hex_base_prefix(range), range), 16,
3361
172
                    false};
3362
3363
34
        case 0:
3364
            // detect base
3365
34
            return parse_integer_base_prefix_for_detection(range);
3366
3367
366
        default:
3368
            // no base prefix allowed
3369
366
            return {range.begin(), base, false};
3370
612
    }
3371
612
}
_ZN3scn2v44impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEEibEEESD_i
Line
Count
Source
3343
2.62k
{
3344
2.62k
    switch (base) {
3345
60
        case 2:
3346
            // allow 0b/0B
3347
60
            return {apply_opt(parse_integer_bin_base_prefix(range), range), 2,
3348
60
                    false};
3349
3350
16
        case 8: {
3351
            // allow 0o/0O/0
3352
16
            bool zero_parsed = false;
3353
16
            auto it = apply_opt(
3354
16
                parse_integer_oct_base_prefix(range, zero_parsed), range);
3355
16
            return {it, 8, zero_parsed};
3356
0
        }
3357
3358
832
        case 16:
3359
            // allow 0x/0X
3360
832
            return {apply_opt(parse_integer_hex_base_prefix(range), range), 16,
3361
832
                    false};
3362
3363
32
        case 0:
3364
            // detect base
3365
32
            return parse_integer_base_prefix_for_detection(range);
3366
3367
1.68k
        default:
3368
            // no base prefix allowed
3369
1.68k
            return {range.begin(), base, false};
3370
2.62k
    }
3371
2.62k
}
3372
3373
template <typename Range>
3374
auto parse_integer_prefix(Range range, int base) -> eof_expected<
3375
    parse_integer_prefix_result<ranges::const_iterator_t<Range>>>
3376
6.98k
{
3377
6.98k
    SCN_TRY(sign_result, parse_numeric_sign(range));
3378
6.98k
    auto [base_prefix_begin_it, sign] = sign_result;
3379
3380
6.98k
    auto [digits_begin_it, parsed_base, parsed_zero] =
3381
6.98k
        parse_integer_base_prefix(
3382
6.98k
            ranges::subrange{base_prefix_begin_it, range.end()}, base);
3383
3384
6.98k
    if (parsed_zero) {
3385
34
        if (digits_begin_it == range.end() ||
3386
34
            char_to_int(*digits_begin_it) >= 8) {
3387
34
            digits_begin_it = base_prefix_begin_it;
3388
34
        }
3389
0
        else {
3390
0
            parsed_zero = false;
3391
0
        }
3392
34
    }
3393
6.95k
    else {
3394
6.95k
        if (digits_begin_it == range.end() ||
3395
6.95k
            char_to_int(*digits_begin_it) >= parsed_base) {
3396
6.80k
            digits_begin_it = base_prefix_begin_it;
3397
6.80k
        }
3398
6.95k
    }
3399
3400
6.98k
    if (sign == sign_type::default_sign) {
3401
6.98k
        sign = sign_type::plus_sign;
3402
6.98k
    }
3403
6.98k
    return parse_integer_prefix_result<ranges::const_iterator_t<Range>>{
3404
6.98k
        digits_begin_it, parsed_base, sign, parsed_zero};
3405
6.98k
}
Unexecuted instantiation: _ZN3scn2v44impl20parse_integer_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESJ_i
Unexecuted instantiation: _ZN3scn2v44impl20parse_integer_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESH_i
_ZN3scn2v44impl20parse_integer_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESG_i
Line
Count
Source
3376
1.04k
{
3377
1.04k
    SCN_TRY(sign_result, parse_numeric_sign(range));
3378
1.04k
    auto [base_prefix_begin_it, sign] = sign_result;
3379
3380
1.04k
    auto [digits_begin_it, parsed_base, parsed_zero] =
3381
1.04k
        parse_integer_base_prefix(
3382
1.04k
            ranges::subrange{base_prefix_begin_it, range.end()}, base);
3383
3384
1.04k
    if (parsed_zero) {
3385
0
        if (digits_begin_it == range.end() ||
3386
0
            char_to_int(*digits_begin_it) >= 8) {
3387
0
            digits_begin_it = base_prefix_begin_it;
3388
0
        }
3389
0
        else {
3390
0
            parsed_zero = false;
3391
0
        }
3392
0
    }
3393
1.04k
    else {
3394
1.04k
        if (digits_begin_it == range.end() ||
3395
1.04k
            char_to_int(*digits_begin_it) >= parsed_base) {
3396
1.04k
            digits_begin_it = base_prefix_begin_it;
3397
1.04k
        }
3398
1.04k
    }
3399
3400
1.04k
    if (sign == sign_type::default_sign) {
3401
1.04k
        sign = sign_type::plus_sign;
3402
1.04k
    }
3403
1.04k
    return parse_integer_prefix_result<ranges::const_iterator_t<Range>>{
3404
1.04k
        digits_begin_it, parsed_base, sign, parsed_zero};
3405
1.04k
}
_ZN3scn2v44impl20parse_integer_prefixINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESE_i
Line
Count
Source
3376
2.71k
{
3377
2.71k
    SCN_TRY(sign_result, parse_numeric_sign(range));
3378
2.71k
    auto [base_prefix_begin_it, sign] = sign_result;
3379
3380
2.71k
    auto [digits_begin_it, parsed_base, parsed_zero] =
3381
2.71k
        parse_integer_base_prefix(
3382
2.71k
            ranges::subrange{base_prefix_begin_it, range.end()}, base);
3383
3384
2.71k
    if (parsed_zero) {
3385
0
        if (digits_begin_it == range.end() ||
3386
0
            char_to_int(*digits_begin_it) >= 8) {
3387
0
            digits_begin_it = base_prefix_begin_it;
3388
0
        }
3389
0
        else {
3390
0
            parsed_zero = false;
3391
0
        }
3392
0
    }
3393
2.71k
    else {
3394
2.71k
        if (digits_begin_it == range.end() ||
3395
2.71k
            char_to_int(*digits_begin_it) >= parsed_base) {
3396
2.71k
            digits_begin_it = base_prefix_begin_it;
3397
2.71k
        }
3398
2.71k
    }
3399
3400
2.71k
    if (sign == sign_type::default_sign) {
3401
2.71k
        sign = sign_type::plus_sign;
3402
2.71k
    }
3403
2.71k
    return parse_integer_prefix_result<ranges::const_iterator_t<Range>>{
3404
2.71k
        digits_begin_it, parsed_base, sign, parsed_zero};
3405
2.71k
}
Unexecuted instantiation: _ZN3scn2v44impl20parse_integer_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESJ_i
Unexecuted instantiation: _ZN3scn2v44impl20parse_integer_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESH_i
_ZN3scn2v44impl20parse_integer_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESG_i
Line
Count
Source
3376
612
{
3377
612
    SCN_TRY(sign_result, parse_numeric_sign(range));
3378
612
    auto [base_prefix_begin_it, sign] = sign_result;
3379
3380
612
    auto [digits_begin_it, parsed_base, parsed_zero] =
3381
612
        parse_integer_base_prefix(
3382
612
            ranges::subrange{base_prefix_begin_it, range.end()}, base);
3383
3384
612
    if (parsed_zero) {
3385
18
        if (digits_begin_it == range.end() ||
3386
18
            char_to_int(*digits_begin_it) >= 8) {
3387
18
            digits_begin_it = base_prefix_begin_it;
3388
18
        }
3389
0
        else {
3390
0
            parsed_zero = false;
3391
0
        }
3392
18
    }
3393
594
    else {
3394
594
        if (digits_begin_it == range.end() ||
3395
594
            char_to_int(*digits_begin_it) >= parsed_base) {
3396
522
            digits_begin_it = base_prefix_begin_it;
3397
522
        }
3398
594
    }
3399
3400
612
    if (sign == sign_type::default_sign) {
3401
612
        sign = sign_type::plus_sign;
3402
612
    }
3403
612
    return parse_integer_prefix_result<ranges::const_iterator_t<Range>>{
3404
612
        digits_begin_it, parsed_base, sign, parsed_zero};
3405
612
}
_ZN3scn2v44impl20parse_integer_prefixINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESE_i
Line
Count
Source
3376
2.62k
{
3377
2.62k
    SCN_TRY(sign_result, parse_numeric_sign(range));
3378
2.62k
    auto [base_prefix_begin_it, sign] = sign_result;
3379
3380
2.62k
    auto [digits_begin_it, parsed_base, parsed_zero] =
3381
2.62k
        parse_integer_base_prefix(
3382
2.62k
            ranges::subrange{base_prefix_begin_it, range.end()}, base);
3383
3384
2.62k
    if (parsed_zero) {
3385
16
        if (digits_begin_it == range.end() ||
3386
16
            char_to_int(*digits_begin_it) >= 8) {
3387
16
            digits_begin_it = base_prefix_begin_it;
3388
16
        }
3389
0
        else {
3390
0
            parsed_zero = false;
3391
0
        }
3392
16
    }
3393
2.60k
    else {
3394
2.60k
        if (digits_begin_it == range.end() ||
3395
2.60k
            char_to_int(*digits_begin_it) >= parsed_base) {
3396
2.53k
            digits_begin_it = base_prefix_begin_it;
3397
2.53k
        }
3398
2.60k
    }
3399
3400
2.62k
    if (sign == sign_type::default_sign) {
3401
2.62k
        sign = sign_type::plus_sign;
3402
2.62k
    }
3403
2.62k
    return parse_integer_prefix_result<ranges::const_iterator_t<Range>>{
3404
2.62k
        digits_begin_it, parsed_base, sign, parsed_zero};
3405
2.62k
}
3406
3407
template <typename Range>
3408
auto parse_integer_digits_without_thsep(Range range, int base)
3409
    -> scan_expected<ranges::const_iterator_t<Range>>
3410
6.81k
{
3411
6.81k
    using char_type = detail::char_t<Range>;
3412
3413
6.81k
    if constexpr (ranges::contiguous_range<Range>) {
3414
5.25k
        if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
3415
0
            return detail::unexpected_scan_error(
3416
0
                scan_error::invalid_scanned_value,
3417
0
                "Failed to parse integer: No digits found");
3418
0
        }
3419
5.25k
        return range.end();
3420
    }
3421
1.56k
    else {
3422
1.56k
        return read_while1_code_unit(range,
3423
1.58k
                                     [&](char_type ch) noexcept {
3424
1.58k
                                         return char_to_int(ch) < base;
3425
1.58k
                                     })
Unexecuted instantiation: _ZZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_iENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_iENKUlcE_clEc
_ZZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_iENKUlcE_clEc
Line
Count
Source
3423
1.01k
                                     [&](char_type ch) noexcept {
3424
1.01k
                                         return char_to_int(ch) < base;
3425
1.01k
                                     })
Unexecuted instantiation: _ZZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_iENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_iENKUlwE_clEw
_ZZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_iENKUlwE_clEw
Line
Count
Source
3423
570
                                     [&](char_type ch) noexcept {
3424
570
                                         return char_to_int(ch) < base;
3425
570
                                     })
3426
1.56k
            .transform_error(map_parse_error_to_scan_error(
3427
1.56k
                scan_error::invalid_scanned_value,
3428
1.56k
                "Failed to parse integer: No digits found"));
3429
1.56k
    }
3430
6.81k
}
Unexecuted instantiation: _ZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_i
Unexecuted instantiation: _ZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_i
_ZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_i
Line
Count
Source
3410
1.01k
{
3411
1.01k
    using char_type = detail::char_t<Range>;
3412
3413
    if constexpr (ranges::contiguous_range<Range>) {
3414
        if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
3415
            return detail::unexpected_scan_error(
3416
                scan_error::invalid_scanned_value,
3417
                "Failed to parse integer: No digits found");
3418
        }
3419
        return range.end();
3420
    }
3421
1.01k
    else {
3422
1.01k
        return read_while1_code_unit(range,
3423
1.01k
                                     [&](char_type ch) noexcept {
3424
1.01k
                                         return char_to_int(ch) < base;
3425
1.01k
                                     })
3426
1.01k
            .transform_error(map_parse_error_to_scan_error(
3427
1.01k
                scan_error::invalid_scanned_value,
3428
1.01k
                "Failed to parse integer: No digits found"));
3429
1.01k
    }
3430
1.01k
}
_ZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_i
Line
Count
Source
3410
2.69k
{
3411
2.69k
    using char_type = detail::char_t<Range>;
3412
3413
2.69k
    if constexpr (ranges::contiguous_range<Range>) {
3414
2.69k
        if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
3415
0
            return detail::unexpected_scan_error(
3416
0
                scan_error::invalid_scanned_value,
3417
0
                "Failed to parse integer: No digits found");
3418
0
        }
3419
2.69k
        return range.end();
3420
    }
3421
    else {
3422
        return read_while1_code_unit(range,
3423
                                     [&](char_type ch) noexcept {
3424
                                         return char_to_int(ch) < base;
3425
                                     })
3426
            .transform_error(map_parse_error_to_scan_error(
3427
                scan_error::invalid_scanned_value,
3428
                "Failed to parse integer: No digits found"));
3429
    }
3430
2.69k
}
Unexecuted instantiation: _ZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_i
Unexecuted instantiation: _ZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_i
_ZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_i
Line
Count
Source
3410
546
{
3411
546
    using char_type = detail::char_t<Range>;
3412
3413
    if constexpr (ranges::contiguous_range<Range>) {
3414
        if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
3415
            return detail::unexpected_scan_error(
3416
                scan_error::invalid_scanned_value,
3417
                "Failed to parse integer: No digits found");
3418
        }
3419
        return range.end();
3420
    }
3421
546
    else {
3422
546
        return read_while1_code_unit(range,
3423
546
                                     [&](char_type ch) noexcept {
3424
546
                                         return char_to_int(ch) < base;
3425
546
                                     })
3426
546
            .transform_error(map_parse_error_to_scan_error(
3427
546
                scan_error::invalid_scanned_value,
3428
546
                "Failed to parse integer: No digits found"));
3429
546
    }
3430
546
}
_ZN3scn2v44impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_i
Line
Count
Source
3410
2.56k
{
3411
2.56k
    using char_type = detail::char_t<Range>;
3412
3413
2.56k
    if constexpr (ranges::contiguous_range<Range>) {
3414
2.56k
        if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
3415
0
            return detail::unexpected_scan_error(
3416
0
                scan_error::invalid_scanned_value,
3417
0
                "Failed to parse integer: No digits found");
3418
0
        }
3419
2.56k
        return range.end();
3420
    }
3421
    else {
3422
        return read_while1_code_unit(range,
3423
                                     [&](char_type ch) noexcept {
3424
                                         return char_to_int(ch) < base;
3425
                                     })
3426
            .transform_error(map_parse_error_to_scan_error(
3427
                scan_error::invalid_scanned_value,
3428
                "Failed to parse integer: No digits found"));
3429
    }
3430
2.56k
}
3431
3432
template <typename Range, typename CharT>
3433
auto parse_integer_digits_with_thsep(
3434
    Range range,
3435
    int base,
3436
    const localized_number_formatting_options<CharT>& locale_options)
3437
    -> scan_expected<std::tuple<ranges::const_iterator_t<Range>,
3438
                                std::basic_string<CharT>,
3439
                                std::string>>
3440
136
{
3441
136
    std::basic_string<CharT> output;
3442
136
    std::string thsep_indices;
3443
136
    auto it = range.begin();
3444
136
    bool digit_matched = false;
3445
152
    for (; it != range.end(); ++it) {
3446
148
        if (*it == locale_options.thousands_sep) {
3447
0
            thsep_indices.push_back(
3448
0
                static_cast<char>(ranges::distance(range.begin(), it)));
3449
0
        }
3450
148
        else if (char_to_int(*it) >= base) {
3451
132
            break;
3452
132
        }
3453
16
        else {
3454
16
            output.push_back(*it);
3455
16
            digit_matched = true;
3456
16
        }
3457
148
    }
3458
136
    if (SCN_UNLIKELY(!digit_matched)) {
3459
120
        return detail::unexpected_scan_error(
3460
120
            scan_error::invalid_scanned_value,
3461
120
            "Failed to parse integer: No digits found");
3462
120
    }
3463
16
    return std::tuple{it, output, thsep_indices};
3464
136
}
Unexecuted instantiation: _ZN3scn2v44impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEcEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSM_9add_constIT_E4typeEEEEENSM_12basic_stringIT0_NSM_11char_traitsISV_EENSM_9allocatorISV_EEEENSU_IcNSW_IcEENSY_IcEEEEEEEEESP_iRKNS1_35localized_number_formatting_optionsISV_EE
Unexecuted instantiation: _ZN3scn2v44impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEcEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEENSE_12basic_stringIT0_NSE_11char_traitsISN_EENSE_9allocatorISN_EEEENSM_IcNSO_IcEENSQ_IcEEEEEEEEESH_iRKNS1_35localized_number_formatting_optionsISN_EE
_ZN3scn2v44impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEcEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSJ_9add_constIT_E4typeEEEEENSJ_12basic_stringIT0_NSJ_11char_traitsISS_EENSJ_9allocatorISS_EEEENSR_IcNST_IcEENSV_IcEEEEEEEEESM_iRKNS1_35localized_number_formatting_optionsISS_EE
Line
Count
Source
3440
24
{
3441
24
    std::basic_string<CharT> output;
3442
24
    std::string thsep_indices;
3443
24
    auto it = range.begin();
3444
24
    bool digit_matched = false;
3445
24
    for (; it != range.end(); ++it) {
3446
24
        if (*it == locale_options.thousands_sep) {
3447
0
            thsep_indices.push_back(
3448
0
                static_cast<char>(ranges::distance(range.begin(), it)));
3449
0
        }
3450
24
        else if (char_to_int(*it) >= base) {
3451
24
            break;
3452
24
        }
3453
0
        else {
3454
0
            output.push_back(*it);
3455
0
            digit_matched = true;
3456
0
        }
3457
24
    }
3458
24
    if (SCN_UNLIKELY(!digit_matched)) {
3459
24
        return detail::unexpected_scan_error(
3460
24
            scan_error::invalid_scanned_value,
3461
24
            "Failed to parse integer: No digits found");
3462
24
    }
3463
0
    return std::tuple{it, output, thsep_indices};
3464
24
}
_ZN3scn2v44impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEcEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSB_9add_constIT_E4typeEEEEENSB_12basic_stringIT0_NSB_11char_traitsISK_EENSB_9allocatorISK_EEEENSJ_IcNSL_IcEENSN_IcEEEEEEEEESE_iRKNS1_35localized_number_formatting_optionsISK_EE
Line
Count
Source
3440
20
{
3441
20
    std::basic_string<CharT> output;
3442
20
    std::string thsep_indices;
3443
20
    auto it = range.begin();
3444
20
    bool digit_matched = false;
3445
20
    for (; it != range.end(); ++it) {
3446
20
        if (*it == locale_options.thousands_sep) {
3447
0
            thsep_indices.push_back(
3448
0
                static_cast<char>(ranges::distance(range.begin(), it)));
3449
0
        }
3450
20
        else if (char_to_int(*it) >= base) {
3451
20
            break;
3452
20
        }
3453
0
        else {
3454
0
            output.push_back(*it);
3455
0
            digit_matched = true;
3456
0
        }
3457
20
    }
3458
20
    if (SCN_UNLIKELY(!digit_matched)) {
3459
20
        return detail::unexpected_scan_error(
3460
20
            scan_error::invalid_scanned_value,
3461
20
            "Failed to parse integer: No digits found");
3462
20
    }
3463
0
    return std::tuple{it, output, thsep_indices};
3464
20
}
Unexecuted instantiation: _ZN3scn2v44impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEwEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSM_9add_constIT_E4typeEEEEENSM_12basic_stringIT0_NSM_11char_traitsISV_EENSM_9allocatorISV_EEEENSU_IcNSW_IcEENSY_IcEEEEEEEEESP_iRKNS1_35localized_number_formatting_optionsISV_EE
Unexecuted instantiation: _ZN3scn2v44impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEwEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEENSE_12basic_stringIT0_NSE_11char_traitsISN_EENSE_9allocatorISN_EEEENSM_IcNSO_IcEENSQ_IcEEEEEEEEESH_iRKNS1_35localized_number_formatting_optionsISN_EE
_ZN3scn2v44impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEwEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSJ_9add_constIT_E4typeEEEEENSJ_12basic_stringIT0_NSJ_11char_traitsISS_EENSJ_9allocatorISS_EEEENSR_IcNST_IcEENSV_IcEEEEEEEEESM_iRKNS1_35localized_number_formatting_optionsISS_EE
Line
Count
Source
3440
48
{
3441
48
    std::basic_string<CharT> output;
3442
48
    std::string thsep_indices;
3443
48
    auto it = range.begin();
3444
48
    bool digit_matched = false;
3445
60
    for (; it != range.end(); ++it) {
3446
56
        if (*it == locale_options.thousands_sep) {
3447
0
            thsep_indices.push_back(
3448
0
                static_cast<char>(ranges::distance(range.begin(), it)));
3449
0
        }
3450
56
        else if (char_to_int(*it) >= base) {
3451
44
            break;
3452
44
        }
3453
12
        else {
3454
12
            output.push_back(*it);
3455
12
            digit_matched = true;
3456
12
        }
3457
56
    }
3458
48
    if (SCN_UNLIKELY(!digit_matched)) {
3459
36
        return detail::unexpected_scan_error(
3460
36
            scan_error::invalid_scanned_value,
3461
36
            "Failed to parse integer: No digits found");
3462
36
    }
3463
12
    return std::tuple{it, output, thsep_indices};
3464
48
}
_ZN3scn2v44impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEwEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSB_9add_constIT_E4typeEEEEENSB_12basic_stringIT0_NSB_11char_traitsISK_EENSB_9allocatorISK_EEEENSJ_IcNSL_IcEENSN_IcEEEEEEEEESE_iRKNS1_35localized_number_formatting_optionsISK_EE
Line
Count
Source
3440
44
{
3441
44
    std::basic_string<CharT> output;
3442
44
    std::string thsep_indices;
3443
44
    auto it = range.begin();
3444
44
    bool digit_matched = false;
3445
48
    for (; it != range.end(); ++it) {
3446
48
        if (*it == locale_options.thousands_sep) {
3447
0
            thsep_indices.push_back(
3448
0
                static_cast<char>(ranges::distance(range.begin(), it)));
3449
0
        }
3450
48
        else if (char_to_int(*it) >= base) {
3451
44
            break;
3452
44
        }
3453
4
        else {
3454
4
            output.push_back(*it);
3455
4
            digit_matched = true;
3456
4
        }
3457
48
    }
3458
44
    if (SCN_UNLIKELY(!digit_matched)) {
3459
40
        return detail::unexpected_scan_error(
3460
40
            scan_error::invalid_scanned_value,
3461
40
            "Failed to parse integer: No digits found");
3462
40
    }
3463
4
    return std::tuple{it, output, thsep_indices};
3464
44
}
3465
3466
template <typename CharT, typename T>
3467
auto parse_integer_value(std::basic_string_view<CharT> source,
3468
                         T& value,
3469
                         sign_type sign,
3470
                         int base)
3471
    -> scan_expected<typename std::basic_string_view<CharT>::iterator>;
3472
3473
template <typename T>
3474
void parse_integer_value_exhaustive_valid(std::string_view source, T& value);
3475
3476
#define SCN_DECLARE_INTEGER_READER_TEMPLATE(CharT, IntT)                    \
3477
    extern template auto parse_integer_value(                               \
3478
        std::basic_string_view<CharT> source, IntT& value, sign_type sign,  \
3479
        int base)                                                           \
3480
        -> scan_expected<typename std::basic_string_view<CharT>::iterator>; \
3481
    extern template void parse_integer_value_exhaustive_valid(              \
3482
        std::string_view, IntT&);
3483
3484
#if !SCN_DISABLE_TYPE_SCHAR
3485
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, signed char)
3486
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, signed char)
3487
#endif
3488
#if !SCN_DISABLE_TYPE_SHORT
3489
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, short)
3490
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, short)
3491
#endif
3492
#if !SCN_DISABLE_TYPE_INT
3493
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, int)
3494
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, int)
3495
#endif
3496
#if !SCN_DISABLE_TYPE_LONG
3497
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, long)
3498
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, long)
3499
#endif
3500
#if !SCN_DISABLE_TYPE_LONG_LONG
3501
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, long long)
3502
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, long long)
3503
#endif
3504
#if !SCN_DISABLE_TYPE_UCHAR
3505
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, unsigned char)
3506
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, unsigned char)
3507
#endif
3508
#if !SCN_DISABLE_TYPE_USHORT
3509
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, unsigned short)
3510
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, unsigned short)
3511
#endif
3512
#if !SCN_DISABLE_TYPE_UINT
3513
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, unsigned int)
3514
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, unsigned int)
3515
#endif
3516
#if !SCN_DISABLE_TYPE_ULONG
3517
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, unsigned long)
3518
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, unsigned long)
3519
#endif
3520
#if !SCN_DISABLE_TYPE_ULONG_LONG
3521
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, unsigned long long)
3522
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, unsigned long long)
3523
#endif
3524
3525
#undef SCN_DECLARE_INTEGER_READER_TEMPLATE
3526
3527
template <typename CharT>
3528
class reader_impl_for_int
3529
    : public reader_base<reader_impl_for_int<CharT>, CharT> {
3530
public:
3531
    constexpr reader_impl_for_int() = default;
3532
3533
    void check_specs_impl(const detail::format_specs& specs,
3534
                          reader_error_handler& eh)
3535
7.24k
    {
3536
7.24k
        detail::check_int_type_specs(specs, eh);
3537
7.24k
    }
scn::v4::impl::reader_impl_for_int<char>::check_specs_impl(scn::v4::detail::format_specs const&, scn::v4::impl::reader_error_handler&)
Line
Count
Source
3535
4.83k
    {
3536
4.83k
        detail::check_int_type_specs(specs, eh);
3537
4.83k
    }
scn::v4::impl::reader_impl_for_int<wchar_t>::check_specs_impl(scn::v4::detail::format_specs const&, scn::v4::impl::reader_error_handler&)
Line
Count
Source
3535
2.41k
    {
3536
2.41k
        detail::check_int_type_specs(specs, eh);
3537
2.41k
    }
3538
3539
    template <typename Range, typename T>
3540
    auto read_default_with_base(Range range, T& value, int base)
3541
        -> scan_expected<ranges::const_iterator_t<Range>>
3542
2.20k
    {
3543
2.20k
        SCN_TRY(prefix_result, parse_integer_prefix(range, base)
3544
2.20k
                                   .transform_error(make_eof_scan_error));
3545
3546
2.20k
        if constexpr (!std::is_signed_v<T>) {
3547
1.10k
            if (prefix_result.sign == sign_type::minus_sign) {
3548
0
                return detail::unexpected_scan_error(
3549
0
                    scan_error::invalid_scanned_value,
3550
0
                    "Unexpected '-' sign when parsing an "
3551
0
                    "unsigned value");
3552
0
            }
3553
1.10k
        }
3554
3555
2.20k
        if (prefix_result.is_zero) {
3556
0
            value = T{0};
3557
0
            return std::next(prefix_result.iterator);
3558
0
        }
3559
3560
4.40k
        SCN_TRY(after_digits_it,
3561
4.40k
                parse_integer_digits_without_thsep(
3562
4.40k
                    ranges::subrange{prefix_result.iterator, range.end()},
3563
4.40k
                    prefix_result.parsed_base));
3564
3565
4.40k
        auto buf = make_contiguous_buffer(
3566
4.40k
            ranges::subrange{prefix_result.iterator, after_digits_it});
3567
4.40k
        SCN_TRY(result_it,
3568
0
                parse_integer_value(buf.view(), value, prefix_result.sign,
3569
0
                                    prefix_result.parsed_base));
3570
3571
0
        return ranges::next(prefix_result.iterator,
3572
0
                            ranges::distance(buf.view().begin(), result_it));
3573
4.40k
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
_ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Line
Count
Source
3542
476
    {
3543
476
        SCN_TRY(prefix_result, parse_integer_prefix(range, base)
3544
476
                                   .transform_error(make_eof_scan_error));
3545
3546
        if constexpr (!std::is_signed_v<T>) {
3547
            if (prefix_result.sign == sign_type::minus_sign) {
3548
                return detail::unexpected_scan_error(
3549
                    scan_error::invalid_scanned_value,
3550
                    "Unexpected '-' sign when parsing an "
3551
                    "unsigned value");
3552
            }
3553
        }
3554
3555
476
        if (prefix_result.is_zero) {
3556
0
            value = T{0};
3557
0
            return std::next(prefix_result.iterator);
3558
0
        }
3559
3560
952
        SCN_TRY(after_digits_it,
3561
952
                parse_integer_digits_without_thsep(
3562
952
                    ranges::subrange{prefix_result.iterator, range.end()},
3563
952
                    prefix_result.parsed_base));
3564
3565
952
        auto buf = make_contiguous_buffer(
3566
952
            ranges::subrange{prefix_result.iterator, after_digits_it});
3567
952
        SCN_TRY(result_it,
3568
0
                parse_integer_value(buf.view(), value, prefix_result.sign,
3569
0
                                    prefix_result.parsed_base));
3570
3571
0
        return ranges::next(prefix_result.iterator,
3572
0
                            ranges::distance(buf.view().begin(), result_it));
3573
952
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
_ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Line
Count
Source
3542
476
    {
3543
476
        SCN_TRY(prefix_result, parse_integer_prefix(range, base)
3544
476
                                   .transform_error(make_eof_scan_error));
3545
3546
476
        if constexpr (!std::is_signed_v<T>) {
3547
476
            if (prefix_result.sign == sign_type::minus_sign) {
3548
0
                return detail::unexpected_scan_error(
3549
0
                    scan_error::invalid_scanned_value,
3550
0
                    "Unexpected '-' sign when parsing an "
3551
0
                    "unsigned value");
3552
0
            }
3553
476
        }
3554
3555
476
        if (prefix_result.is_zero) {
3556
0
            value = T{0};
3557
0
            return std::next(prefix_result.iterator);
3558
0
        }
3559
3560
952
        SCN_TRY(after_digits_it,
3561
952
                parse_integer_digits_without_thsep(
3562
952
                    ranges::subrange{prefix_result.iterator, range.end()},
3563
952
                    prefix_result.parsed_base));
3564
3565
952
        auto buf = make_contiguous_buffer(
3566
952
            ranges::subrange{prefix_result.iterator, after_digits_it});
3567
952
        SCN_TRY(result_it,
3568
0
                parse_integer_value(buf.view(), value, prefix_result.sign,
3569
0
                                    prefix_result.parsed_base));
3570
3571
0
        return ranges::next(prefix_result.iterator,
3572
0
                            ranges::distance(buf.view().begin(), result_it));
3573
952
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
_ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Line
Count
Source
3542
624
    {
3543
624
        SCN_TRY(prefix_result, parse_integer_prefix(range, base)
3544
624
                                   .transform_error(make_eof_scan_error));
3545
3546
        if constexpr (!std::is_signed_v<T>) {
3547
            if (prefix_result.sign == sign_type::minus_sign) {
3548
                return detail::unexpected_scan_error(
3549
                    scan_error::invalid_scanned_value,
3550
                    "Unexpected '-' sign when parsing an "
3551
                    "unsigned value");
3552
            }
3553
        }
3554
3555
624
        if (prefix_result.is_zero) {
3556
0
            value = T{0};
3557
0
            return std::next(prefix_result.iterator);
3558
0
        }
3559
3560
1.24k
        SCN_TRY(after_digits_it,
3561
1.24k
                parse_integer_digits_without_thsep(
3562
1.24k
                    ranges::subrange{prefix_result.iterator, range.end()},
3563
1.24k
                    prefix_result.parsed_base));
3564
3565
1.24k
        auto buf = make_contiguous_buffer(
3566
1.24k
            ranges::subrange{prefix_result.iterator, after_digits_it});
3567
1.24k
        SCN_TRY(result_it,
3568
0
                parse_integer_value(buf.view(), value, prefix_result.sign,
3569
0
                                    prefix_result.parsed_base));
3570
3571
0
        return ranges::next(prefix_result.iterator,
3572
0
                            ranges::distance(buf.view().begin(), result_it));
3573
1.24k
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
_ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Line
Count
Source
3542
624
    {
3543
624
        SCN_TRY(prefix_result, parse_integer_prefix(range, base)
3544
624
                                   .transform_error(make_eof_scan_error));
3545
3546
624
        if constexpr (!std::is_signed_v<T>) {
3547
624
            if (prefix_result.sign == sign_type::minus_sign) {
3548
0
                return detail::unexpected_scan_error(
3549
0
                    scan_error::invalid_scanned_value,
3550
0
                    "Unexpected '-' sign when parsing an "
3551
0
                    "unsigned value");
3552
0
            }
3553
624
        }
3554
3555
624
        if (prefix_result.is_zero) {
3556
0
            value = T{0};
3557
0
            return std::next(prefix_result.iterator);
3558
0
        }
3559
3560
1.24k
        SCN_TRY(after_digits_it,
3561
1.24k
                parse_integer_digits_without_thsep(
3562
1.24k
                    ranges::subrange{prefix_result.iterator, range.end()},
3563
1.24k
                    prefix_result.parsed_base));
3564
3565
1.24k
        auto buf = make_contiguous_buffer(
3566
1.24k
            ranges::subrange{prefix_result.iterator, after_digits_it});
3567
1.24k
        SCN_TRY(result_it,
3568
0
                parse_integer_value(buf.view(), value, prefix_result.sign,
3569
0
                                    prefix_result.parsed_base));
3570
3571
0
        return ranges::next(prefix_result.iterator,
3572
0
                            ranges::distance(buf.view().begin(), result_it));
3573
1.24k
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
3574
3575
    template <typename Range, typename T>
3576
    auto read_default(Range range, T& value, detail::locale_ref loc)
3577
        -> scan_expected<ranges::const_iterator_t<Range>>
3578
2.20k
    {
3579
2.20k
        SCN_UNUSED(loc);
3580
2.20k
        return read_default_with_base(range, value, 10);
3581
2.20k
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
_ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Line
Count
Source
3578
624
    {
3579
624
        SCN_UNUSED(loc);
3580
624
        return read_default_with_base(range, value, 10);
3581
624
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
_ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Line
Count
Source
3578
624
    {
3579
624
        SCN_UNUSED(loc);
3580
624
        return read_default_with_base(range, value, 10);
3581
624
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
_ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Line
Count
Source
3578
476
    {
3579
476
        SCN_UNUSED(loc);
3580
476
        return read_default_with_base(range, value, 10);
3581
476
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
_ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Line
Count
Source
3578
476
    {
3579
476
        SCN_UNUSED(loc);
3580
476
        return read_default_with_base(range, value, 10);
3581
476
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
3582
3583
    template <typename Range, typename T>
3584
    auto read_specs(Range range,
3585
                    const detail::format_specs& specs,
3586
                    T& value,
3587
                    detail::locale_ref loc)
3588
        -> scan_expected<ranges::const_iterator_t<Range>>
3589
4.78k
    {
3590
4.78k
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
4.78k
                                   .transform_error(make_eof_scan_error));
3592
3593
4.78k
        if (prefix_result.sign == sign_type::minus_sign) {
3594
0
            if constexpr (!std::is_signed_v<T>) {
3595
0
                return detail::unexpected_scan_error(
3596
0
                    scan_error::invalid_scanned_value,
3597
0
                    "Unexpected '-' sign when parsing an "
3598
0
                    "unsigned value");
3599
            }
3600
0
            else {
3601
0
                if (specs.type ==
3602
0
                    detail::presentation_type::int_unsigned_decimal) {
3603
0
                    return detail::unexpected_scan_error(
3604
0
                        scan_error::invalid_scanned_value,
3605
0
                        "'u'-option disallows negative values");
3606
0
                }
3607
0
            }
3608
0
        }
3609
3610
4.78k
        if (prefix_result.is_zero) {
3611
34
            value = T{0};
3612
34
            return std::next(prefix_result.iterator);
3613
34
        }
3614
3615
4.75k
        if (SCN_LIKELY(!specs.localized)) {
3616
4.61k
            SCN_TRY(after_digits_it,
3617
3.11k
                    parse_integer_digits_without_thsep(
3618
3.11k
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
3.11k
                        prefix_result.parsed_base));
3620
3621
3.11k
            auto buf = make_contiguous_buffer(
3622
3.11k
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
3.11k
            SCN_TRY(result_it,
3624
128
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
128
                                        prefix_result.parsed_base));
3626
3627
128
            return ranges::next(
3628
128
                prefix_result.iterator,
3629
128
                ranges::distance(buf.view().begin(), result_it));
3630
3.11k
        }
3631
3632
136
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
136
            localized_number_formatting_options<CharT>{loc};
3637
136
#endif
3638
3639
136
        SCN_TRY(parse_digits_result,
3640
16
                parse_integer_digits_with_thsep(
3641
16
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
16
                    prefix_result.parsed_base, locale_options));
3643
16
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
16
            parse_digits_result;
3645
3646
16
        auto nothsep_source_view =
3647
16
            std::basic_string_view<CharT>{nothsep_source};
3648
16
        SCN_TRY(
3649
16
            nothsep_source_it,
3650
16
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
16
                                prefix_result.parsed_base));
3652
3653
16
        return ranges::next(
3654
16
            prefix_result.iterator,
3655
16
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
16
                ranges::ssize(thsep_indices));
3657
16
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEaEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEaEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3589
36
    {
3590
36
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
36
                                   .transform_error(make_eof_scan_error));
3592
3593
36
        if (prefix_result.sign == sign_type::minus_sign) {
3594
            if constexpr (!std::is_signed_v<T>) {
3595
                return detail::unexpected_scan_error(
3596
                    scan_error::invalid_scanned_value,
3597
                    "Unexpected '-' sign when parsing an "
3598
                    "unsigned value");
3599
            }
3600
0
            else {
3601
0
                if (specs.type ==
3602
0
                    detail::presentation_type::int_unsigned_decimal) {
3603
0
                    return detail::unexpected_scan_error(
3604
0
                        scan_error::invalid_scanned_value,
3605
0
                        "'u'-option disallows negative values");
3606
0
                }
3607
0
            }
3608
0
        }
3609
3610
36
        if (prefix_result.is_zero) {
3611
0
            value = T{0};
3612
0
            return std::next(prefix_result.iterator);
3613
0
        }
3614
3615
36
        if (SCN_LIKELY(!specs.localized)) {
3616
36
            SCN_TRY(after_digits_it,
3617
0
                    parse_integer_digits_without_thsep(
3618
0
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
0
                        prefix_result.parsed_base));
3620
3621
0
            auto buf = make_contiguous_buffer(
3622
0
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
0
            SCN_TRY(result_it,
3624
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
0
                                        prefix_result.parsed_base));
3626
3627
0
            return ranges::next(
3628
0
                prefix_result.iterator,
3629
0
                ranges::distance(buf.view().begin(), result_it));
3630
0
        }
3631
3632
0
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
0
            localized_number_formatting_options<CharT>{loc};
3637
0
#endif
3638
3639
0
        SCN_TRY(parse_digits_result,
3640
0
                parse_integer_digits_with_thsep(
3641
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
0
                    prefix_result.parsed_base, locale_options));
3643
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
0
            parse_digits_result;
3645
3646
0
        auto nothsep_source_view =
3647
0
            std::basic_string_view<CharT>{nothsep_source};
3648
0
        SCN_TRY(
3649
0
            nothsep_source_it,
3650
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
0
                                prefix_result.parsed_base));
3652
3653
0
        return ranges::next(
3654
0
            prefix_result.iterator,
3655
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
0
                ranges::ssize(thsep_indices));
3657
0
    }
_ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3589
22
    {
3590
22
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
22
                                   .transform_error(make_eof_scan_error));
3592
3593
22
        if (prefix_result.sign == sign_type::minus_sign) {
3594
            if constexpr (!std::is_signed_v<T>) {
3595
                return detail::unexpected_scan_error(
3596
                    scan_error::invalid_scanned_value,
3597
                    "Unexpected '-' sign when parsing an "
3598
                    "unsigned value");
3599
            }
3600
0
            else {
3601
0
                if (specs.type ==
3602
0
                    detail::presentation_type::int_unsigned_decimal) {
3603
0
                    return detail::unexpected_scan_error(
3604
0
                        scan_error::invalid_scanned_value,
3605
0
                        "'u'-option disallows negative values");
3606
0
                }
3607
0
            }
3608
0
        }
3609
3610
22
        if (prefix_result.is_zero) {
3611
0
            value = T{0};
3612
0
            return std::next(prefix_result.iterator);
3613
0
        }
3614
3615
22
        if (SCN_LIKELY(!specs.localized)) {
3616
22
            SCN_TRY(after_digits_it,
3617
22
                    parse_integer_digits_without_thsep(
3618
22
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
22
                        prefix_result.parsed_base));
3620
3621
22
            auto buf = make_contiguous_buffer(
3622
22
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
22
            SCN_TRY(result_it,
3624
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
0
                                        prefix_result.parsed_base));
3626
3627
0
            return ranges::next(
3628
0
                prefix_result.iterator,
3629
0
                ranges::distance(buf.view().begin(), result_it));
3630
22
        }
3631
3632
0
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
0
            localized_number_formatting_options<CharT>{loc};
3637
0
#endif
3638
3639
0
        SCN_TRY(parse_digits_result,
3640
0
                parse_integer_digits_with_thsep(
3641
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
0
                    prefix_result.parsed_base, locale_options));
3643
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
0
            parse_digits_result;
3645
3646
0
        auto nothsep_source_view =
3647
0
            std::basic_string_view<CharT>{nothsep_source};
3648
0
        SCN_TRY(
3649
0
            nothsep_source_it,
3650
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
0
                                prefix_result.parsed_base));
3652
3653
0
        return ranges::next(
3654
0
            prefix_result.iterator,
3655
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
0
                ranges::ssize(thsep_indices));
3657
0
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEsEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEsEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEiEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEiEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3589
348
    {
3590
348
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
348
                                   .transform_error(make_eof_scan_error));
3592
3593
348
        if (prefix_result.sign == sign_type::minus_sign) {
3594
            if constexpr (!std::is_signed_v<T>) {
3595
                return detail::unexpected_scan_error(
3596
                    scan_error::invalid_scanned_value,
3597
                    "Unexpected '-' sign when parsing an "
3598
                    "unsigned value");
3599
            }
3600
0
            else {
3601
0
                if (specs.type ==
3602
0
                    detail::presentation_type::int_unsigned_decimal) {
3603
0
                    return detail::unexpected_scan_error(
3604
0
                        scan_error::invalid_scanned_value,
3605
0
                        "'u'-option disallows negative values");
3606
0
                }
3607
0
            }
3608
0
        }
3609
3610
348
        if (prefix_result.is_zero) {
3611
0
            value = T{0};
3612
0
            return std::next(prefix_result.iterator);
3613
0
        }
3614
3615
348
        if (SCN_LIKELY(!specs.localized)) {
3616
336
            SCN_TRY(after_digits_it,
3617
0
                    parse_integer_digits_without_thsep(
3618
0
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
0
                        prefix_result.parsed_base));
3620
3621
0
            auto buf = make_contiguous_buffer(
3622
0
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
0
            SCN_TRY(result_it,
3624
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
0
                                        prefix_result.parsed_base));
3626
3627
0
            return ranges::next(
3628
0
                prefix_result.iterator,
3629
0
                ranges::distance(buf.view().begin(), result_it));
3630
0
        }
3631
3632
12
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
12
            localized_number_formatting_options<CharT>{loc};
3637
12
#endif
3638
3639
12
        SCN_TRY(parse_digits_result,
3640
0
                parse_integer_digits_with_thsep(
3641
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
0
                    prefix_result.parsed_base, locale_options));
3643
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
0
            parse_digits_result;
3645
3646
0
        auto nothsep_source_view =
3647
0
            std::basic_string_view<CharT>{nothsep_source};
3648
0
        SCN_TRY(
3649
0
            nothsep_source_it,
3650
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
0
                                prefix_result.parsed_base));
3652
3653
0
        return ranges::next(
3654
0
            prefix_result.iterator,
3655
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
0
                ranges::ssize(thsep_indices));
3657
0
    }
_ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3589
282
    {
3590
282
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
282
                                   .transform_error(make_eof_scan_error));
3592
3593
282
        if (prefix_result.sign == sign_type::minus_sign) {
3594
            if constexpr (!std::is_signed_v<T>) {
3595
                return detail::unexpected_scan_error(
3596
                    scan_error::invalid_scanned_value,
3597
                    "Unexpected '-' sign when parsing an "
3598
                    "unsigned value");
3599
            }
3600
0
            else {
3601
0
                if (specs.type ==
3602
0
                    detail::presentation_type::int_unsigned_decimal) {
3603
0
                    return detail::unexpected_scan_error(
3604
0
                        scan_error::invalid_scanned_value,
3605
0
                        "'u'-option disallows negative values");
3606
0
                }
3607
0
            }
3608
0
        }
3609
3610
282
        if (prefix_result.is_zero) {
3611
0
            value = T{0};
3612
0
            return std::next(prefix_result.iterator);
3613
0
        }
3614
3615
282
        if (SCN_LIKELY(!specs.localized)) {
3616
272
            SCN_TRY(after_digits_it,
3617
272
                    parse_integer_digits_without_thsep(
3618
272
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
272
                        prefix_result.parsed_base));
3620
3621
272
            auto buf = make_contiguous_buffer(
3622
272
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
272
            SCN_TRY(result_it,
3624
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
0
                                        prefix_result.parsed_base));
3626
3627
0
            return ranges::next(
3628
0
                prefix_result.iterator,
3629
0
                ranges::distance(buf.view().begin(), result_it));
3630
272
        }
3631
3632
10
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
10
            localized_number_formatting_options<CharT>{loc};
3637
10
#endif
3638
3639
10
        SCN_TRY(parse_digits_result,
3640
0
                parse_integer_digits_with_thsep(
3641
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
0
                    prefix_result.parsed_base, locale_options));
3643
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
0
            parse_digits_result;
3645
3646
0
        auto nothsep_source_view =
3647
0
            std::basic_string_view<CharT>{nothsep_source};
3648
0
        SCN_TRY(
3649
0
            nothsep_source_it,
3650
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
0
                                prefix_result.parsed_base));
3652
3653
0
        return ranges::next(
3654
0
            prefix_result.iterator,
3655
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
0
                ranges::ssize(thsep_indices));
3657
0
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEElEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEElEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEExEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEExEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEhEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEhEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEtEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEtEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEjEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEjEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3589
348
    {
3590
348
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
348
                                   .transform_error(make_eof_scan_error));
3592
3593
348
        if (prefix_result.sign == sign_type::minus_sign) {
3594
0
            if constexpr (!std::is_signed_v<T>) {
3595
0
                return detail::unexpected_scan_error(
3596
0
                    scan_error::invalid_scanned_value,
3597
0
                    "Unexpected '-' sign when parsing an "
3598
0
                    "unsigned value");
3599
            }
3600
            else {
3601
                if (specs.type ==
3602
                    detail::presentation_type::int_unsigned_decimal) {
3603
                    return detail::unexpected_scan_error(
3604
                        scan_error::invalid_scanned_value,
3605
                        "'u'-option disallows negative values");
3606
                }
3607
            }
3608
0
        }
3609
3610
348
        if (prefix_result.is_zero) {
3611
0
            value = T{0};
3612
0
            return std::next(prefix_result.iterator);
3613
0
        }
3614
3615
348
        if (SCN_LIKELY(!specs.localized)) {
3616
336
            SCN_TRY(after_digits_it,
3617
0
                    parse_integer_digits_without_thsep(
3618
0
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
0
                        prefix_result.parsed_base));
3620
3621
0
            auto buf = make_contiguous_buffer(
3622
0
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
0
            SCN_TRY(result_it,
3624
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
0
                                        prefix_result.parsed_base));
3626
3627
0
            return ranges::next(
3628
0
                prefix_result.iterator,
3629
0
                ranges::distance(buf.view().begin(), result_it));
3630
0
        }
3631
3632
12
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
12
            localized_number_formatting_options<CharT>{loc};
3637
12
#endif
3638
3639
12
        SCN_TRY(parse_digits_result,
3640
0
                parse_integer_digits_with_thsep(
3641
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
0
                    prefix_result.parsed_base, locale_options));
3643
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
0
            parse_digits_result;
3645
3646
0
        auto nothsep_source_view =
3647
0
            std::basic_string_view<CharT>{nothsep_source};
3648
0
        SCN_TRY(
3649
0
            nothsep_source_it,
3650
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
0
                                prefix_result.parsed_base));
3652
3653
0
        return ranges::next(
3654
0
            prefix_result.iterator,
3655
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
0
                ranges::ssize(thsep_indices));
3657
0
    }
_ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3589
282
    {
3590
282
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
282
                                   .transform_error(make_eof_scan_error));
3592
3593
282
        if (prefix_result.sign == sign_type::minus_sign) {
3594
0
            if constexpr (!std::is_signed_v<T>) {
3595
0
                return detail::unexpected_scan_error(
3596
0
                    scan_error::invalid_scanned_value,
3597
0
                    "Unexpected '-' sign when parsing an "
3598
0
                    "unsigned value");
3599
            }
3600
            else {
3601
                if (specs.type ==
3602
                    detail::presentation_type::int_unsigned_decimal) {
3603
                    return detail::unexpected_scan_error(
3604
                        scan_error::invalid_scanned_value,
3605
                        "'u'-option disallows negative values");
3606
                }
3607
            }
3608
0
        }
3609
3610
282
        if (prefix_result.is_zero) {
3611
0
            value = T{0};
3612
0
            return std::next(prefix_result.iterator);
3613
0
        }
3614
3615
282
        if (SCN_LIKELY(!specs.localized)) {
3616
272
            SCN_TRY(after_digits_it,
3617
272
                    parse_integer_digits_without_thsep(
3618
272
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
272
                        prefix_result.parsed_base));
3620
3621
272
            auto buf = make_contiguous_buffer(
3622
272
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
272
            SCN_TRY(result_it,
3624
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
0
                                        prefix_result.parsed_base));
3626
3627
0
            return ranges::next(
3628
0
                prefix_result.iterator,
3629
0
                ranges::distance(buf.view().begin(), result_it));
3630
272
        }
3631
3632
10
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
10
            localized_number_formatting_options<CharT>{loc};
3637
10
#endif
3638
3639
10
        SCN_TRY(parse_digits_result,
3640
0
                parse_integer_digits_with_thsep(
3641
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
0
                    prefix_result.parsed_base, locale_options));
3643
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
0
            parse_digits_result;
3645
3646
0
        auto nothsep_source_view =
3647
0
            std::basic_string_view<CharT>{nothsep_source};
3648
0
        SCN_TRY(
3649
0
            nothsep_source_it,
3650
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
0
                                prefix_result.parsed_base));
3652
3653
0
        return ranges::next(
3654
0
            prefix_result.iterator,
3655
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
0
                ranges::ssize(thsep_indices));
3657
0
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEmEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEmEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3589
310
    {
3590
310
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
310
                                   .transform_error(make_eof_scan_error));
3592
3593
310
        if (prefix_result.sign == sign_type::minus_sign) {
3594
0
            if constexpr (!std::is_signed_v<T>) {
3595
0
                return detail::unexpected_scan_error(
3596
0
                    scan_error::invalid_scanned_value,
3597
0
                    "Unexpected '-' sign when parsing an "
3598
0
                    "unsigned value");
3599
            }
3600
            else {
3601
                if (specs.type ==
3602
                    detail::presentation_type::int_unsigned_decimal) {
3603
                    return detail::unexpected_scan_error(
3604
                        scan_error::invalid_scanned_value,
3605
                        "'u'-option disallows negative values");
3606
                }
3607
            }
3608
0
        }
3609
3610
310
        if (prefix_result.is_zero) {
3611
0
            value = T{0};
3612
0
            return std::next(prefix_result.iterator);
3613
0
        }
3614
3615
310
        if (SCN_LIKELY(!specs.localized)) {
3616
310
            SCN_TRY(after_digits_it,
3617
0
                    parse_integer_digits_without_thsep(
3618
0
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
0
                        prefix_result.parsed_base));
3620
3621
0
            auto buf = make_contiguous_buffer(
3622
0
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
0
            SCN_TRY(result_it,
3624
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
0
                                        prefix_result.parsed_base));
3626
3627
0
            return ranges::next(
3628
0
                prefix_result.iterator,
3629
0
                ranges::distance(buf.view().begin(), result_it));
3630
0
        }
3631
3632
0
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
0
            localized_number_formatting_options<CharT>{loc};
3637
0
#endif
3638
3639
0
        SCN_TRY(parse_digits_result,
3640
0
                parse_integer_digits_with_thsep(
3641
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
0
                    prefix_result.parsed_base, locale_options));
3643
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
0
            parse_digits_result;
3645
3646
0
        auto nothsep_source_view =
3647
0
            std::basic_string_view<CharT>{nothsep_source};
3648
0
        SCN_TRY(
3649
0
            nothsep_source_it,
3650
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
0
                                prefix_result.parsed_base));
3652
3653
0
        return ranges::next(
3654
0
            prefix_result.iterator,
3655
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
0
                ranges::ssize(thsep_indices));
3657
0
    }
_ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3589
878
    {
3590
878
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
878
                                   .transform_error(make_eof_scan_error));
3592
3593
878
        if (prefix_result.sign == sign_type::minus_sign) {
3594
0
            if constexpr (!std::is_signed_v<T>) {
3595
0
                return detail::unexpected_scan_error(
3596
0
                    scan_error::invalid_scanned_value,
3597
0
                    "Unexpected '-' sign when parsing an "
3598
0
                    "unsigned value");
3599
            }
3600
            else {
3601
                if (specs.type ==
3602
                    detail::presentation_type::int_unsigned_decimal) {
3603
                    return detail::unexpected_scan_error(
3604
                        scan_error::invalid_scanned_value,
3605
                        "'u'-option disallows negative values");
3606
                }
3607
            }
3608
0
        }
3609
3610
878
        if (prefix_result.is_zero) {
3611
0
            value = T{0};
3612
0
            return std::next(prefix_result.iterator);
3613
0
        }
3614
3615
878
        if (SCN_LIKELY(!specs.localized)) {
3616
878
            SCN_TRY(after_digits_it,
3617
878
                    parse_integer_digits_without_thsep(
3618
878
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
878
                        prefix_result.parsed_base));
3620
3621
878
            auto buf = make_contiguous_buffer(
3622
878
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
878
            SCN_TRY(result_it,
3624
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
0
                                        prefix_result.parsed_base));
3626
3627
0
            return ranges::next(
3628
0
                prefix_result.iterator,
3629
0
                ranges::distance(buf.view().begin(), result_it));
3630
878
        }
3631
3632
0
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
0
            localized_number_formatting_options<CharT>{loc};
3637
0
#endif
3638
3639
0
        SCN_TRY(parse_digits_result,
3640
0
                parse_integer_digits_with_thsep(
3641
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
0
                    prefix_result.parsed_base, locale_options));
3643
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
0
            parse_digits_result;
3645
3646
0
        auto nothsep_source_view =
3647
0
            std::basic_string_view<CharT>{nothsep_source};
3648
0
        SCN_TRY(
3649
0
            nothsep_source_it,
3650
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
0
                                prefix_result.parsed_base));
3652
3653
0
        return ranges::next(
3654
0
            prefix_result.iterator,
3655
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
0
                ranges::ssize(thsep_indices));
3657
0
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEyEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEyEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEiEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEiEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3589
248
    {
3590
248
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
248
                                   .transform_error(make_eof_scan_error));
3592
3593
248
        if (prefix_result.sign == sign_type::minus_sign) {
3594
            if constexpr (!std::is_signed_v<T>) {
3595
                return detail::unexpected_scan_error(
3596
                    scan_error::invalid_scanned_value,
3597
                    "Unexpected '-' sign when parsing an "
3598
                    "unsigned value");
3599
            }
3600
0
            else {
3601
0
                if (specs.type ==
3602
0
                    detail::presentation_type::int_unsigned_decimal) {
3603
0
                    return detail::unexpected_scan_error(
3604
0
                        scan_error::invalid_scanned_value,
3605
0
                        "'u'-option disallows negative values");
3606
0
                }
3607
0
            }
3608
0
        }
3609
3610
248
        if (prefix_result.is_zero) {
3611
12
            value = T{0};
3612
12
            return std::next(prefix_result.iterator);
3613
12
        }
3614
3615
236
        if (SCN_LIKELY(!specs.localized)) {
3616
212
            SCN_TRY(after_digits_it,
3617
24
                    parse_integer_digits_without_thsep(
3618
24
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
24
                        prefix_result.parsed_base));
3620
3621
24
            auto buf = make_contiguous_buffer(
3622
24
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
24
            SCN_TRY(result_it,
3624
24
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
24
                                        prefix_result.parsed_base));
3626
3627
24
            return ranges::next(
3628
24
                prefix_result.iterator,
3629
24
                ranges::distance(buf.view().begin(), result_it));
3630
24
        }
3631
3632
24
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
24
            localized_number_formatting_options<CharT>{loc};
3637
24
#endif
3638
3639
24
        SCN_TRY(parse_digits_result,
3640
6
                parse_integer_digits_with_thsep(
3641
6
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
6
                    prefix_result.parsed_base, locale_options));
3643
6
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
6
            parse_digits_result;
3645
3646
6
        auto nothsep_source_view =
3647
6
            std::basic_string_view<CharT>{nothsep_source};
3648
6
        SCN_TRY(
3649
6
            nothsep_source_it,
3650
6
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
6
                                prefix_result.parsed_base));
3652
3653
6
        return ranges::next(
3654
6
            prefix_result.iterator,
3655
6
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
6
                ranges::ssize(thsep_indices));
3657
6
    }
_ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3589
448
    {
3590
448
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
448
                                   .transform_error(make_eof_scan_error));
3592
3593
448
        if (prefix_result.sign == sign_type::minus_sign) {
3594
            if constexpr (!std::is_signed_v<T>) {
3595
                return detail::unexpected_scan_error(
3596
                    scan_error::invalid_scanned_value,
3597
                    "Unexpected '-' sign when parsing an "
3598
                    "unsigned value");
3599
            }
3600
0
            else {
3601
0
                if (specs.type ==
3602
0
                    detail::presentation_type::int_unsigned_decimal) {
3603
0
                    return detail::unexpected_scan_error(
3604
0
                        scan_error::invalid_scanned_value,
3605
0
                        "'u'-option disallows negative values");
3606
0
                }
3607
0
            }
3608
0
        }
3609
3610
448
        if (prefix_result.is_zero) {
3611
10
            value = T{0};
3612
10
            return std::next(prefix_result.iterator);
3613
10
        }
3614
3615
438
        if (SCN_LIKELY(!specs.localized)) {
3616
416
            SCN_TRY(after_digits_it,
3617
416
                    parse_integer_digits_without_thsep(
3618
416
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
416
                        prefix_result.parsed_base));
3620
3621
416
            auto buf = make_contiguous_buffer(
3622
416
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
416
            SCN_TRY(result_it,
3624
24
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
24
                                        prefix_result.parsed_base));
3626
3627
24
            return ranges::next(
3628
24
                prefix_result.iterator,
3629
24
                ranges::distance(buf.view().begin(), result_it));
3630
416
        }
3631
3632
22
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
22
            localized_number_formatting_options<CharT>{loc};
3637
22
#endif
3638
3639
22
        SCN_TRY(parse_digits_result,
3640
2
                parse_integer_digits_with_thsep(
3641
2
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
2
                    prefix_result.parsed_base, locale_options));
3643
2
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
2
            parse_digits_result;
3645
3646
2
        auto nothsep_source_view =
3647
2
            std::basic_string_view<CharT>{nothsep_source};
3648
2
        SCN_TRY(
3649
2
            nothsep_source_it,
3650
2
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
2
                                prefix_result.parsed_base));
3652
3653
2
        return ranges::next(
3654
2
            prefix_result.iterator,
3655
2
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
2
                ranges::ssize(thsep_indices));
3657
2
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEaEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEaEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEsEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEsEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEElEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEElEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEExEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEExEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEhEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEhEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEtEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEtEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEjEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEjEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3589
208
    {
3590
208
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
208
                                   .transform_error(make_eof_scan_error));
3592
3593
208
        if (prefix_result.sign == sign_type::minus_sign) {
3594
0
            if constexpr (!std::is_signed_v<T>) {
3595
0
                return detail::unexpected_scan_error(
3596
0
                    scan_error::invalid_scanned_value,
3597
0
                    "Unexpected '-' sign when parsing an "
3598
0
                    "unsigned value");
3599
            }
3600
            else {
3601
                if (specs.type ==
3602
                    detail::presentation_type::int_unsigned_decimal) {
3603
                    return detail::unexpected_scan_error(
3604
                        scan_error::invalid_scanned_value,
3605
                        "'u'-option disallows negative values");
3606
                }
3607
            }
3608
0
        }
3609
3610
208
        if (prefix_result.is_zero) {
3611
6
            value = T{0};
3612
6
            return std::next(prefix_result.iterator);
3613
6
        }
3614
3615
202
        if (SCN_LIKELY(!specs.localized)) {
3616
178
            SCN_TRY(after_digits_it,
3617
20
                    parse_integer_digits_without_thsep(
3618
20
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
20
                        prefix_result.parsed_base));
3620
3621
20
            auto buf = make_contiguous_buffer(
3622
20
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
20
            SCN_TRY(result_it,
3624
20
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
20
                                        prefix_result.parsed_base));
3626
3627
20
            return ranges::next(
3628
20
                prefix_result.iterator,
3629
20
                ranges::distance(buf.view().begin(), result_it));
3630
20
        }
3631
3632
24
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
24
            localized_number_formatting_options<CharT>{loc};
3637
24
#endif
3638
3639
24
        SCN_TRY(parse_digits_result,
3640
6
                parse_integer_digits_with_thsep(
3641
6
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
6
                    prefix_result.parsed_base, locale_options));
3643
6
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
6
            parse_digits_result;
3645
3646
6
        auto nothsep_source_view =
3647
6
            std::basic_string_view<CharT>{nothsep_source};
3648
6
        SCN_TRY(
3649
6
            nothsep_source_it,
3650
6
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
6
                                prefix_result.parsed_base));
3652
3653
6
        return ranges::next(
3654
6
            prefix_result.iterator,
3655
6
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
6
                ranges::ssize(thsep_indices));
3657
6
    }
_ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3589
404
    {
3590
404
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
404
                                   .transform_error(make_eof_scan_error));
3592
3593
404
        if (prefix_result.sign == sign_type::minus_sign) {
3594
0
            if constexpr (!std::is_signed_v<T>) {
3595
0
                return detail::unexpected_scan_error(
3596
0
                    scan_error::invalid_scanned_value,
3597
0
                    "Unexpected '-' sign when parsing an "
3598
0
                    "unsigned value");
3599
            }
3600
            else {
3601
                if (specs.type ==
3602
                    detail::presentation_type::int_unsigned_decimal) {
3603
                    return detail::unexpected_scan_error(
3604
                        scan_error::invalid_scanned_value,
3605
                        "'u'-option disallows negative values");
3606
                }
3607
            }
3608
0
        }
3609
3610
404
        if (prefix_result.is_zero) {
3611
6
            value = T{0};
3612
6
            return std::next(prefix_result.iterator);
3613
6
        }
3614
3615
398
        if (SCN_LIKELY(!specs.localized)) {
3616
376
            SCN_TRY(after_digits_it,
3617
376
                    parse_integer_digits_without_thsep(
3618
376
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
376
                        prefix_result.parsed_base));
3620
3621
376
            auto buf = make_contiguous_buffer(
3622
376
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
376
            SCN_TRY(result_it,
3624
22
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
22
                                        prefix_result.parsed_base));
3626
3627
22
            return ranges::next(
3628
22
                prefix_result.iterator,
3629
22
                ranges::distance(buf.view().begin(), result_it));
3630
376
        }
3631
3632
22
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
22
            localized_number_formatting_options<CharT>{loc};
3637
22
#endif
3638
3639
22
        SCN_TRY(parse_digits_result,
3640
2
                parse_integer_digits_with_thsep(
3641
2
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
2
                    prefix_result.parsed_base, locale_options));
3643
2
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
2
            parse_digits_result;
3645
3646
2
        auto nothsep_source_view =
3647
2
            std::basic_string_view<CharT>{nothsep_source};
3648
2
        SCN_TRY(
3649
2
            nothsep_source_it,
3650
2
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
2
                                prefix_result.parsed_base));
3652
3653
2
        return ranges::next(
3654
2
            prefix_result.iterator,
3655
2
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
2
                ranges::ssize(thsep_indices));
3657
2
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEmEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEmEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3589
156
    {
3590
156
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
156
                                   .transform_error(make_eof_scan_error));
3592
3593
156
        if (prefix_result.sign == sign_type::minus_sign) {
3594
0
            if constexpr (!std::is_signed_v<T>) {
3595
0
                return detail::unexpected_scan_error(
3596
0
                    scan_error::invalid_scanned_value,
3597
0
                    "Unexpected '-' sign when parsing an "
3598
0
                    "unsigned value");
3599
            }
3600
            else {
3601
                if (specs.type ==
3602
                    detail::presentation_type::int_unsigned_decimal) {
3603
                    return detail::unexpected_scan_error(
3604
                        scan_error::invalid_scanned_value,
3605
                        "'u'-option disallows negative values");
3606
                }
3607
            }
3608
0
        }
3609
3610
156
        if (prefix_result.is_zero) {
3611
0
            value = T{0};
3612
0
            return std::next(prefix_result.iterator);
3613
0
        }
3614
3615
156
        if (SCN_LIKELY(!specs.localized)) {
3616
156
            SCN_TRY(after_digits_it,
3617
16
                    parse_integer_digits_without_thsep(
3618
16
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
16
                        prefix_result.parsed_base));
3620
3621
16
            auto buf = make_contiguous_buffer(
3622
16
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
16
            SCN_TRY(result_it,
3624
16
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
16
                                        prefix_result.parsed_base));
3626
3627
16
            return ranges::next(
3628
16
                prefix_result.iterator,
3629
16
                ranges::distance(buf.view().begin(), result_it));
3630
16
        }
3631
3632
0
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
0
            localized_number_formatting_options<CharT>{loc};
3637
0
#endif
3638
3639
0
        SCN_TRY(parse_digits_result,
3640
0
                parse_integer_digits_with_thsep(
3641
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
0
                    prefix_result.parsed_base, locale_options));
3643
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
0
            parse_digits_result;
3645
3646
0
        auto nothsep_source_view =
3647
0
            std::basic_string_view<CharT>{nothsep_source};
3648
0
        SCN_TRY(
3649
0
            nothsep_source_it,
3650
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
0
                                prefix_result.parsed_base));
3652
3653
0
        return ranges::next(
3654
0
            prefix_result.iterator,
3655
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
0
                ranges::ssize(thsep_indices));
3657
0
    }
_ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3589
816
    {
3590
816
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3591
816
                                   .transform_error(make_eof_scan_error));
3592
3593
816
        if (prefix_result.sign == sign_type::minus_sign) {
3594
0
            if constexpr (!std::is_signed_v<T>) {
3595
0
                return detail::unexpected_scan_error(
3596
0
                    scan_error::invalid_scanned_value,
3597
0
                    "Unexpected '-' sign when parsing an "
3598
0
                    "unsigned value");
3599
            }
3600
            else {
3601
                if (specs.type ==
3602
                    detail::presentation_type::int_unsigned_decimal) {
3603
                    return detail::unexpected_scan_error(
3604
                        scan_error::invalid_scanned_value,
3605
                        "'u'-option disallows negative values");
3606
                }
3607
            }
3608
0
        }
3609
3610
816
        if (prefix_result.is_zero) {
3611
0
            value = T{0};
3612
0
            return std::next(prefix_result.iterator);
3613
0
        }
3614
3615
816
        if (SCN_LIKELY(!specs.localized)) {
3616
816
            SCN_TRY(after_digits_it,
3617
816
                    parse_integer_digits_without_thsep(
3618
816
                        ranges::subrange{prefix_result.iterator, range.end()},
3619
816
                        prefix_result.parsed_base));
3620
3621
816
            auto buf = make_contiguous_buffer(
3622
816
                ranges::subrange{prefix_result.iterator, after_digits_it});
3623
816
            SCN_TRY(result_it,
3624
22
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3625
22
                                        prefix_result.parsed_base));
3626
3627
22
            return ranges::next(
3628
22
                prefix_result.iterator,
3629
22
                ranges::distance(buf.view().begin(), result_it));
3630
816
        }
3631
3632
0
        auto locale_options =
3633
#if SCN_DISABLE_LOCALE
3634
            localized_number_formatting_options<CharT>{};
3635
#else
3636
0
            localized_number_formatting_options<CharT>{loc};
3637
0
#endif
3638
3639
0
        SCN_TRY(parse_digits_result,
3640
0
                parse_integer_digits_with_thsep(
3641
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3642
0
                    prefix_result.parsed_base, locale_options));
3643
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3644
0
            parse_digits_result;
3645
3646
0
        auto nothsep_source_view =
3647
0
            std::basic_string_view<CharT>{nothsep_source};
3648
0
        SCN_TRY(
3649
0
            nothsep_source_it,
3650
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3651
0
                                prefix_result.parsed_base));
3652
3653
0
        return ranges::next(
3654
0
            prefix_result.iterator,
3655
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3656
0
                ranges::ssize(thsep_indices));
3657
0
    }
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEyEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEyEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
3658
};
3659
3660
/////////////////////////////////////////////////////////////////
3661
// Floating-point reader
3662
/////////////////////////////////////////////////////////////////
3663
3664
struct float_reader_base {
3665
    enum options_type {
3666
        allow_hex = 1,
3667
        allow_scientific = 2,
3668
        allow_fixed = 4,
3669
        allow_thsep = 8
3670
    };
3671
3672
    enum class float_kind {
3673
        tbd = 0,
3674
        generic,             // fixed or scientific
3675
        fixed,               // xxx.yyy
3676
        scientific,          // xxx.yyyEzzz
3677
        hex_without_prefix,  // xxx.yyypzzz
3678
        hex_with_prefix,     // 0Xxxx.yyypzzz
3679
        inf_short,           // inf
3680
        inf_long,            // infinity
3681
        nan_simple,          // nan
3682
        nan_with_payload,    // nan(xxx)
3683
    };
3684
3685
1.10k
    constexpr float_reader_base() = default;
3686
1.28k
    explicit constexpr float_reader_base(unsigned opt) : m_options(opt) {}
3687
3688
protected:
3689
    unsigned m_options{allow_hex | allow_scientific | allow_fixed};
3690
};
3691
3692
template <typename CharT>
3693
class float_reader : public numeric_reader<CharT>, public float_reader_base {
3694
    using numeric_base = numeric_reader<CharT>;
3695
3696
public:
3697
    using char_type = CharT;
3698
3699
1.10k
    constexpr float_reader() = default;
scn::v4::impl::float_reader<char>::float_reader()
Line
Count
Source
3699
624
    constexpr float_reader() = default;
scn::v4::impl::float_reader<wchar_t>::float_reader()
Line
Count
Source
3699
476
    constexpr float_reader() = default;
3700
3701
1.28k
    explicit constexpr float_reader(unsigned opt) : float_reader_base(opt) {}
scn::v4::impl::float_reader<char>::float_reader(unsigned int)
Line
Count
Source
3701
642
    explicit constexpr float_reader(unsigned opt) : float_reader_base(opt) {}
scn::v4::impl::float_reader<wchar_t>::float_reader(unsigned int)
Line
Count
Source
3701
638
    explicit constexpr float_reader(unsigned opt) : float_reader_base(opt) {}
3702
3703
    template <typename Range>
3704
    SCN_NODISCARD auto read_source(Range range, detail::locale_ref)
3705
        -> scan_expected<ranges::const_iterator_t<Range>>
3706
2.33k
    {
3707
2.33k
        if (SCN_UNLIKELY(m_options & float_reader_base::allow_thsep)) {
3708
0
            m_locale_options = localized_number_formatting_options<CharT>{
3709
0
                classic_with_thsep_tag{}};
3710
0
        }
3711
3712
2.33k
        return read_source_impl(range);
3713
2.33k
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE11read_sourceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE11read_sourceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS9_10locale_refE
_ZN3scn2v44impl12float_readerIcE11read_sourceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS0_6detail10locale_refE
Line
Count
Source
3706
346
    {
3707
346
        if (SCN_UNLIKELY(m_options & float_reader_base::allow_thsep)) {
3708
0
            m_locale_options = localized_number_formatting_options<CharT>{
3709
0
                classic_with_thsep_tag{}};
3710
0
        }
3711
3712
346
        return read_source_impl(range);
3713
346
    }
_ZN3scn2v44impl12float_readerIcE11read_sourceINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS0_6detail10locale_refE
Line
Count
Source
3706
902
    {
3707
902
        if (SCN_UNLIKELY(m_options & float_reader_base::allow_thsep)) {
3708
0
            m_locale_options = localized_number_formatting_options<CharT>{
3709
0
                classic_with_thsep_tag{}};
3710
0
        }
3711
3712
902
        return read_source_impl(range);
3713
902
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE11read_sourceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE11read_sourceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS9_10locale_refE
_ZN3scn2v44impl12float_readerIwE11read_sourceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS0_6detail10locale_refE
Line
Count
Source
3706
180
    {
3707
180
        if (SCN_UNLIKELY(m_options & float_reader_base::allow_thsep)) {
3708
0
            m_locale_options = localized_number_formatting_options<CharT>{
3709
0
                classic_with_thsep_tag{}};
3710
0
        }
3711
3712
180
        return read_source_impl(range);
3713
180
    }
_ZN3scn2v44impl12float_readerIwE11read_sourceINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS0_6detail10locale_refE
Line
Count
Source
3706
906
    {
3707
906
        if (SCN_UNLIKELY(m_options & float_reader_base::allow_thsep)) {
3708
0
            m_locale_options = localized_number_formatting_options<CharT>{
3709
0
                classic_with_thsep_tag{}};
3710
0
        }
3711
3712
906
        return read_source_impl(range);
3713
906
    }
3714
3715
#if !SCN_DISABLE_LOCALE
3716
    template <typename Range>
3717
    SCN_NODISCARD auto read_source_localized(Range range,
3718
                                             detail::locale_ref loc)
3719
        -> scan_expected<ranges::const_iterator_t<Range>>
3720
46
    {
3721
46
        m_locale_options = localized_number_formatting_options<CharT>{loc};
3722
46
        if (SCN_LIKELY((m_options & float_reader_base::allow_thsep) == 0)) {
3723
0
            m_locale_options.thousands_sep = CharT{0};
3724
0
        }
3725
3726
46
        return read_source_impl(range);
3727
46
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE21read_source_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE21read_source_localizedINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS9_10locale_refE
_ZN3scn2v44impl12float_readerIcE21read_source_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS0_6detail10locale_refE
Line
Count
Source
3720
12
    {
3721
12
        m_locale_options = localized_number_formatting_options<CharT>{loc};
3722
12
        if (SCN_LIKELY((m_options & float_reader_base::allow_thsep) == 0)) {
3723
0
            m_locale_options.thousands_sep = CharT{0};
3724
0
        }
3725
3726
12
        return read_source_impl(range);
3727
12
    }
_ZN3scn2v44impl12float_readerIcE21read_source_localizedINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS0_6detail10locale_refE
Line
Count
Source
3720
6
    {
3721
6
        m_locale_options = localized_number_formatting_options<CharT>{loc};
3722
6
        if (SCN_LIKELY((m_options & float_reader_base::allow_thsep) == 0)) {
3723
0
            m_locale_options.thousands_sep = CharT{0};
3724
0
        }
3725
3726
6
        return read_source_impl(range);
3727
6
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE21read_source_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE21read_source_localizedINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS9_10locale_refE
_ZN3scn2v44impl12float_readerIwE21read_source_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS0_6detail10locale_refE
Line
Count
Source
3720
14
    {
3721
14
        m_locale_options = localized_number_formatting_options<CharT>{loc};
3722
14
        if (SCN_LIKELY((m_options & float_reader_base::allow_thsep) == 0)) {
3723
0
            m_locale_options.thousands_sep = CharT{0};
3724
0
        }
3725
3726
14
        return read_source_impl(range);
3727
14
    }
_ZN3scn2v44impl12float_readerIwE21read_source_localizedINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS0_6detail10locale_refE
Line
Count
Source
3720
14
    {
3721
14
        m_locale_options = localized_number_formatting_options<CharT>{loc};
3722
14
        if (SCN_LIKELY((m_options & float_reader_base::allow_thsep) == 0)) {
3723
0
            m_locale_options.thousands_sep = CharT{0};
3724
0
        }
3725
3726
14
        return read_source_impl(range);
3727
14
    }
3728
#endif
3729
3730
    template <typename T>
3731
    SCN_NODISCARD scan_expected<std::ptrdiff_t> parse_value(T& value)
3732
1.81k
    {
3733
1.81k
        SCN_EXPECT(m_kind != float_kind::tbd);
3734
3735
1.81k
        const std::ptrdiff_t sign_len =
3736
1.81k
            m_sign != sign_type::default_sign ? 1 : 0;
3737
3738
1.81k
        SCN_TRY(n, parse_value_impl(value));
3739
108
        return n + sign_len + ranges::ssize(m_thsep_indices);
3740
1.81k
    }
Unexecuted instantiation: scn::v4::scan_expected<long> scn::v4::impl::float_reader<char>::parse_value<float>(float&)
scn::v4::scan_expected<long> scn::v4::impl::float_reader<char>::parse_value<double>(double&)
Line
Count
Source
3732
886
    {
3733
886
        SCN_EXPECT(m_kind != float_kind::tbd);
3734
3735
886
        const std::ptrdiff_t sign_len =
3736
886
            m_sign != sign_type::default_sign ? 1 : 0;
3737
3738
886
        SCN_TRY(n, parse_value_impl(value));
3739
0
        return n + sign_len + ranges::ssize(m_thsep_indices);
3740
886
    }
Unexecuted instantiation: scn::v4::scan_expected<long> scn::v4::impl::float_reader<char>::parse_value<long double>(long double&)
Unexecuted instantiation: scn::v4::scan_expected<long> scn::v4::impl::float_reader<wchar_t>::parse_value<float>(float&)
scn::v4::scan_expected<long> scn::v4::impl::float_reader<wchar_t>::parse_value<double>(double&)
Line
Count
Source
3732
932
    {
3733
932
        SCN_EXPECT(m_kind != float_kind::tbd);
3734
3735
932
        const std::ptrdiff_t sign_len =
3736
932
            m_sign != sign_type::default_sign ? 1 : 0;
3737
3738
932
        SCN_TRY(n, parse_value_impl(value));
3739
108
        return n + sign_len + ranges::ssize(m_thsep_indices);
3740
932
    }
Unexecuted instantiation: scn::v4::scan_expected<long> scn::v4::impl::float_reader<wchar_t>::parse_value<long double>(long double&)
3741
3742
private:
3743
    template <typename Range>
3744
    auto read_source_impl(Range range)
3745
        -> scan_expected<ranges::const_iterator_t<Range>>
3746
2.38k
    {
3747
2.38k
        SCN_TRY(sign_result,
3748
2.38k
                parse_numeric_sign(range).transform_error(make_eof_scan_error));
3749
2.38k
        auto it = sign_result.first;
3750
2.38k
        m_sign = sign_result.second;
3751
3752
2.38k
        auto digits_begin = it;
3753
2.38k
        auto r = ranges::subrange{it, range.end()};
3754
        if constexpr (ranges::contiguous_range<Range> &&
3755
1.82k
                      ranges::sized_range<Range>) {
3756
1.82k
            if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 ||
3757
1.82k
                             m_locale_options.decimal_point != CharT{'.'})) {
3758
0
                SCN_TRY_ASSIGN(
3759
0
                    it,
3760
0
                    do_read_source_impl(
3761
0
                        r,
3762
0
                        [&](const auto& rr) { return read_regular_float(rr); },
3763
0
                        [&](const auto& rr) { return read_hexfloat(rr); }));
3764
0
            }
3765
1.82k
            else {
3766
1.82k
                auto cb = [&](const auto& rr)
3767
1.82k
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3768
1.78k
                    auto res = read_all(rr);
3769
1.78k
                    if (SCN_UNLIKELY(res == r.begin())) {
3770
0
                        return detail::unexpected_scan_error(
3771
0
                            scan_error::invalid_scanned_value,
3772
0
                            "Invalid float value");
3773
0
                    }
3774
1.78k
                    return res;
3775
1.78k
                };
_ZZN3scn2v44impl12float_readerIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_ENKUlRKSF_E1_clISB_EENSC_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSE_IDtfp_EE4typeEEEEEEESM_
Line
Count
Source
3767
886
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3768
886
                    auto res = read_all(rr);
3769
886
                    if (SCN_UNLIKELY(res == r.begin())) {
3770
0
                        return detail::unexpected_scan_error(
3771
0
                            scan_error::invalid_scanned_value,
3772
0
                            "Invalid float value");
3773
0
                    }
3774
886
                    return res;
3775
886
                };
_ZZN3scn2v44impl12float_readerIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_ENKUlRKSF_E1_clISB_EENSC_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSE_IDtfp_EE4typeEEEEEEESM_
Line
Count
Source
3767
898
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3768
898
                    auto res = read_all(rr);
3769
898
                    if (SCN_UNLIKELY(res == r.begin())) {
3770
0
                        return detail::unexpected_scan_error(
3771
0
                            scan_error::invalid_scanned_value,
3772
0
                            "Invalid float value");
3773
0
                    }
3774
898
                    return res;
3775
898
                };
3776
1.82k
                SCN_TRY_ASSIGN(it, do_read_source_impl(r, cb, cb));
3777
1.78k
            }
3778
        }
3779
552
        else {
3780
552
            SCN_TRY_ASSIGN(
3781
30
                it,
3782
30
                do_read_source_impl(
3783
30
                    r, [&](const auto& rr) { return read_regular_float(rr); },
3784
30
                    [&](const auto& rr) { return read_hexfloat(rr); }));
3785
30
        }
3786
3787
2.38k
        SCN_EXPECT(m_kind != float_kind::tbd);
3788
3789
1.81k
        if (m_kind != float_kind::inf_short && m_kind != float_kind::inf_long &&
3790
1.81k
            m_kind != float_kind::nan_simple &&
3791
1.81k
            m_kind != float_kind::nan_with_payload) {
3792
1.81k
            this->m_buffer.assign(ranges::subrange{digits_begin, it});
3793
1.81k
        }
3794
3795
1.81k
        handle_separators();
3796
3797
1.81k
        return it;
3798
2.38k
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v44impl12float_readerIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_
Line
Count
Source
3746
358
    {
3747
358
        SCN_TRY(sign_result,
3748
358
                parse_numeric_sign(range).transform_error(make_eof_scan_error));
3749
358
        auto it = sign_result.first;
3750
358
        m_sign = sign_result.second;
3751
3752
358
        auto digits_begin = it;
3753
358
        auto r = ranges::subrange{it, range.end()};
3754
        if constexpr (ranges::contiguous_range<Range> &&
3755
                      ranges::sized_range<Range>) {
3756
            if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 ||
3757
                             m_locale_options.decimal_point != CharT{'.'})) {
3758
                SCN_TRY_ASSIGN(
3759
                    it,
3760
                    do_read_source_impl(
3761
                        r,
3762
                        [&](const auto& rr) { return read_regular_float(rr); },
3763
                        [&](const auto& rr) { return read_hexfloat(rr); }));
3764
            }
3765
            else {
3766
                auto cb = [&](const auto& rr)
3767
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3768
                    auto res = read_all(rr);
3769
                    if (SCN_UNLIKELY(res == r.begin())) {
3770
                        return detail::unexpected_scan_error(
3771
                            scan_error::invalid_scanned_value,
3772
                            "Invalid float value");
3773
                    }
3774
                    return res;
3775
                };
3776
                SCN_TRY_ASSIGN(it, do_read_source_impl(r, cb, cb));
3777
            }
3778
        }
3779
358
        else {
3780
358
            SCN_TRY_ASSIGN(
3781
0
                it,
3782
0
                do_read_source_impl(
3783
0
                    r, [&](const auto& rr) { return read_regular_float(rr); },
3784
0
                    [&](const auto& rr) { return read_hexfloat(rr); }));
3785
0
        }
3786
3787
358
        SCN_EXPECT(m_kind != float_kind::tbd);
3788
3789
0
        if (m_kind != float_kind::inf_short && m_kind != float_kind::inf_long &&
3790
0
            m_kind != float_kind::nan_simple &&
3791
0
            m_kind != float_kind::nan_with_payload) {
3792
0
            this->m_buffer.assign(ranges::subrange{digits_begin, it});
3793
0
        }
3794
3795
0
        handle_separators();
3796
3797
0
        return it;
3798
358
    }
_ZN3scn2v44impl12float_readerIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3746
908
    {
3747
908
        SCN_TRY(sign_result,
3748
908
                parse_numeric_sign(range).transform_error(make_eof_scan_error));
3749
908
        auto it = sign_result.first;
3750
908
        m_sign = sign_result.second;
3751
3752
908
        auto digits_begin = it;
3753
908
        auto r = ranges::subrange{it, range.end()};
3754
        if constexpr (ranges::contiguous_range<Range> &&
3755
908
                      ranges::sized_range<Range>) {
3756
908
            if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 ||
3757
908
                             m_locale_options.decimal_point != CharT{'.'})) {
3758
0
                SCN_TRY_ASSIGN(
3759
0
                    it,
3760
0
                    do_read_source_impl(
3761
0
                        r,
3762
0
                        [&](const auto& rr) { return read_regular_float(rr); },
3763
0
                        [&](const auto& rr) { return read_hexfloat(rr); }));
3764
0
            }
3765
908
            else {
3766
908
                auto cb = [&](const auto& rr)
3767
908
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3768
908
                    auto res = read_all(rr);
3769
908
                    if (SCN_UNLIKELY(res == r.begin())) {
3770
908
                        return detail::unexpected_scan_error(
3771
908
                            scan_error::invalid_scanned_value,
3772
908
                            "Invalid float value");
3773
908
                    }
3774
908
                    return res;
3775
908
                };
3776
908
                SCN_TRY_ASSIGN(it, do_read_source_impl(r, cb, cb));
3777
886
            }
3778
        }
3779
        else {
3780
            SCN_TRY_ASSIGN(
3781
                it,
3782
                do_read_source_impl(
3783
                    r, [&](const auto& rr) { return read_regular_float(rr); },
3784
                    [&](const auto& rr) { return read_hexfloat(rr); }));
3785
        }
3786
3787
908
        SCN_EXPECT(m_kind != float_kind::tbd);
3788
3789
886
        if (m_kind != float_kind::inf_short && m_kind != float_kind::inf_long &&
3790
886
            m_kind != float_kind::nan_simple &&
3791
886
            m_kind != float_kind::nan_with_payload) {
3792
886
            this->m_buffer.assign(ranges::subrange{digits_begin, it});
3793
886
        }
3794
3795
886
        handle_separators();
3796
3797
886
        return it;
3798
908
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v44impl12float_readerIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_
Line
Count
Source
3746
194
    {
3747
194
        SCN_TRY(sign_result,
3748
194
                parse_numeric_sign(range).transform_error(make_eof_scan_error));
3749
194
        auto it = sign_result.first;
3750
194
        m_sign = sign_result.second;
3751
3752
194
        auto digits_begin = it;
3753
194
        auto r = ranges::subrange{it, range.end()};
3754
        if constexpr (ranges::contiguous_range<Range> &&
3755
                      ranges::sized_range<Range>) {
3756
            if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 ||
3757
                             m_locale_options.decimal_point != CharT{'.'})) {
3758
                SCN_TRY_ASSIGN(
3759
                    it,
3760
                    do_read_source_impl(
3761
                        r,
3762
                        [&](const auto& rr) { return read_regular_float(rr); },
3763
                        [&](const auto& rr) { return read_hexfloat(rr); }));
3764
            }
3765
            else {
3766
                auto cb = [&](const auto& rr)
3767
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3768
                    auto res = read_all(rr);
3769
                    if (SCN_UNLIKELY(res == r.begin())) {
3770
                        return detail::unexpected_scan_error(
3771
                            scan_error::invalid_scanned_value,
3772
                            "Invalid float value");
3773
                    }
3774
                    return res;
3775
                };
3776
                SCN_TRY_ASSIGN(it, do_read_source_impl(r, cb, cb));
3777
            }
3778
        }
3779
194
        else {
3780
194
            SCN_TRY_ASSIGN(
3781
30
                it,
3782
30
                do_read_source_impl(
3783
30
                    r, [&](const auto& rr) { return read_regular_float(rr); },
3784
30
                    [&](const auto& rr) { return read_hexfloat(rr); }));
3785
30
        }
3786
3787
194
        SCN_EXPECT(m_kind != float_kind::tbd);
3788
3789
30
        if (m_kind != float_kind::inf_short && m_kind != float_kind::inf_long &&
3790
30
            m_kind != float_kind::nan_simple &&
3791
30
            m_kind != float_kind::nan_with_payload) {
3792
30
            this->m_buffer.assign(ranges::subrange{digits_begin, it});
3793
30
        }
3794
3795
30
        handle_separators();
3796
3797
30
        return it;
3798
194
    }
_ZN3scn2v44impl12float_readerIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3746
920
    {
3747
920
        SCN_TRY(sign_result,
3748
920
                parse_numeric_sign(range).transform_error(make_eof_scan_error));
3749
920
        auto it = sign_result.first;
3750
920
        m_sign = sign_result.second;
3751
3752
920
        auto digits_begin = it;
3753
920
        auto r = ranges::subrange{it, range.end()};
3754
        if constexpr (ranges::contiguous_range<Range> &&
3755
920
                      ranges::sized_range<Range>) {
3756
920
            if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 ||
3757
920
                             m_locale_options.decimal_point != CharT{'.'})) {
3758
0
                SCN_TRY_ASSIGN(
3759
0
                    it,
3760
0
                    do_read_source_impl(
3761
0
                        r,
3762
0
                        [&](const auto& rr) { return read_regular_float(rr); },
3763
0
                        [&](const auto& rr) { return read_hexfloat(rr); }));
3764
0
            }
3765
920
            else {
3766
920
                auto cb = [&](const auto& rr)
3767
920
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3768
920
                    auto res = read_all(rr);
3769
920
                    if (SCN_UNLIKELY(res == r.begin())) {
3770
920
                        return detail::unexpected_scan_error(
3771
920
                            scan_error::invalid_scanned_value,
3772
920
                            "Invalid float value");
3773
920
                    }
3774
920
                    return res;
3775
920
                };
3776
920
                SCN_TRY_ASSIGN(it, do_read_source_impl(r, cb, cb));
3777
902
            }
3778
        }
3779
        else {
3780
            SCN_TRY_ASSIGN(
3781
                it,
3782
                do_read_source_impl(
3783
                    r, [&](const auto& rr) { return read_regular_float(rr); },
3784
                    [&](const auto& rr) { return read_hexfloat(rr); }));
3785
        }
3786
3787
920
        SCN_EXPECT(m_kind != float_kind::tbd);
3788
3789
902
        if (m_kind != float_kind::inf_short && m_kind != float_kind::inf_long &&
3790
902
            m_kind != float_kind::nan_simple &&
3791
902
            m_kind != float_kind::nan_with_payload) {
3792
902
            this->m_buffer.assign(ranges::subrange{digits_begin, it});
3793
902
        }
3794
3795
902
        handle_separators();
3796
3797
902
        return it;
3798
920
    }
3799
3800
    template <typename Range>
3801
    auto read_dec_digits(Range range, bool thsep_allowed)
3802
        -> parse_expected<ranges::const_iterator_t<Range>>
3803
604
    {
3804
604
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3805
604
                         thsep_allowed)) {
3806
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3807
0
                return char_to_int(ch) < 10 ||
3808
0
                       ch == m_locale_options.thousands_sep;
3809
0
            });
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlwE_clEw
3810
0
        }
3811
3812
604
        return read_while1_code_unit(
3813
608
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlcE0_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlcE0_clEc
_ZZN3scn2v44impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlcE0_clEc
Line
Count
Source
3813
350
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
_ZZN3scn2v44impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlcE0_clEc
Line
Count
Source
3813
22
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlwE0_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlwE0_clEw
_ZZN3scn2v44impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlwE0_clEw
Line
Count
Source
3813
202
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
_ZZN3scn2v44impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlwE0_clEw
Line
Count
Source
3813
34
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
3814
604
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_b
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_b
_ZN3scn2v44impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_b
Line
Count
Source
3803
350
    {
3804
350
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3805
350
                         thsep_allowed)) {
3806
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3807
0
                return char_to_int(ch) < 10 ||
3808
0
                       ch == m_locale_options.thousands_sep;
3809
0
            });
3810
0
        }
3811
3812
350
        return read_while1_code_unit(
3813
350
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
3814
350
    }
_ZN3scn2v44impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_b
Line
Count
Source
3803
22
    {
3804
22
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3805
22
                         thsep_allowed)) {
3806
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3807
0
                return char_to_int(ch) < 10 ||
3808
0
                       ch == m_locale_options.thousands_sep;
3809
0
            });
3810
0
        }
3811
3812
22
        return read_while1_code_unit(
3813
22
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
3814
22
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_b
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_b
_ZN3scn2v44impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_b
Line
Count
Source
3803
204
    {
3804
204
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3805
204
                         thsep_allowed)) {
3806
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3807
0
                return char_to_int(ch) < 10 ||
3808
0
                       ch == m_locale_options.thousands_sep;
3809
0
            });
3810
0
        }
3811
3812
204
        return read_while1_code_unit(
3813
204
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
3814
204
    }
_ZN3scn2v44impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_b
Line
Count
Source
3803
28
    {
3804
28
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3805
28
                         thsep_allowed)) {
3806
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3807
0
                return char_to_int(ch) < 10 ||
3808
0
                       ch == m_locale_options.thousands_sep;
3809
0
            });
3810
0
        }
3811
3812
28
        return read_while1_code_unit(
3813
28
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
3814
28
    }
3815
    template <typename Range>
3816
    auto read_hex_digits(Range range, bool thsep_allowed)
3817
        -> parse_expected<ranges::const_iterator_t<Range>>
3818
30
    {
3819
30
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3820
30
                         thsep_allowed)) {
3821
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3822
0
                return char_to_int(ch) < 16 ||
3823
0
                       ch == m_locale_options.thousands_sep;
3824
0
            });
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlwE_clEw
3825
0
        }
3826
3827
30
        return read_while1_code_unit(
3828
32
            range, [](char_type ch) noexcept { return char_to_int(ch) < 16; });
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlcE0_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlcE0_clEc
_ZZN3scn2v44impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlcE0_clEc
Line
Count
Source
3828
8
            range, [](char_type ch) noexcept { return char_to_int(ch) < 16; });
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlcE0_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlwE0_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlwE0_clEw
_ZZN3scn2v44impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlwE0_clEw
Line
Count
Source
3828
24
            range, [](char_type ch) noexcept { return char_to_int(ch) < 16; });
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlwE0_clEw
3829
30
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_b
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_b
_ZN3scn2v44impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_b
Line
Count
Source
3818
8
    {
3819
8
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3820
8
                         thsep_allowed)) {
3821
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3822
0
                return char_to_int(ch) < 16 ||
3823
0
                       ch == m_locale_options.thousands_sep;
3824
0
            });
3825
0
        }
3826
3827
8
        return read_while1_code_unit(
3828
8
            range, [](char_type ch) noexcept { return char_to_int(ch) < 16; });
3829
8
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_b
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_b
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_b
_ZN3scn2v44impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_b
Line
Count
Source
3818
22
    {
3819
22
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3820
22
                         thsep_allowed)) {
3821
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3822
0
                return char_to_int(ch) < 16 ||
3823
0
                       ch == m_locale_options.thousands_sep;
3824
0
            });
3825
0
        }
3826
3827
22
        return read_while1_code_unit(
3828
22
            range, [](char_type ch) noexcept { return char_to_int(ch) < 16; });
3829
22
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_b
3830
    template <typename Range>
3831
    auto read_hex_prefix(Range range)
3832
        -> parse_expected<ranges::const_iterator_t<Range>>
3833
2.29k
    {
3834
2.29k
        return read_matching_string_classic_nocase(range, "0x");
3835
2.29k
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v44impl12float_readerIcE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3833
328
    {
3834
328
        return read_matching_string_classic_nocase(range, "0x");
3835
328
    }
_ZN3scn2v44impl12float_readerIcE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3833
886
    {
3834
886
        return read_matching_string_classic_nocase(range, "0x");
3835
886
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v44impl12float_readerIwE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3833
182
    {
3834
182
        return read_matching_string_classic_nocase(range, "0x");
3835
182
    }
_ZN3scn2v44impl12float_readerIwE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3833
898
    {
3834
898
        return read_matching_string_classic_nocase(range, "0x");
3835
898
    }
3836
3837
    template <typename Range>
3838
    auto read_inf(Range range)
3839
        -> parse_expected<ranges::const_iterator_t<Range>>
3840
2.38k
    {
3841
2.38k
        auto it = range.begin();
3842
2.38k
        if (auto r = read_matching_string_classic_nocase(range, "inf"); !r) {
3843
2.38k
            return unexpected(r.error());
3844
2.38k
        }
3845
0
        else {
3846
0
            it = *r;
3847
0
        }
3848
3849
0
        if (auto r = read_matching_string_classic_nocase(
3850
0
                ranges::subrange{it, range.end()}, "inity");
3851
0
            !r) {
3852
0
            m_kind = float_kind::inf_short;
3853
0
            return it;
3854
0
        }
3855
0
        else {
3856
0
            m_kind = float_kind::inf_long;
3857
0
            return *r;
3858
0
        }
3859
0
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE8read_infINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE8read_infINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v44impl12float_readerIcE8read_infINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3840
358
    {
3841
358
        auto it = range.begin();
3842
358
        if (auto r = read_matching_string_classic_nocase(range, "inf"); !r) {
3843
358
            return unexpected(r.error());
3844
358
        }
3845
0
        else {
3846
0
            it = *r;
3847
0
        }
3848
3849
0
        if (auto r = read_matching_string_classic_nocase(
3850
0
                ranges::subrange{it, range.end()}, "inity");
3851
0
            !r) {
3852
0
            m_kind = float_kind::inf_short;
3853
0
            return it;
3854
0
        }
3855
0
        else {
3856
0
            m_kind = float_kind::inf_long;
3857
0
            return *r;
3858
0
        }
3859
0
    }
_ZN3scn2v44impl12float_readerIcE8read_infINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3840
908
    {
3841
908
        auto it = range.begin();
3842
908
        if (auto r = read_matching_string_classic_nocase(range, "inf"); !r) {
3843
908
            return unexpected(r.error());
3844
908
        }
3845
0
        else {
3846
0
            it = *r;
3847
0
        }
3848
3849
0
        if (auto r = read_matching_string_classic_nocase(
3850
0
                ranges::subrange{it, range.end()}, "inity");
3851
0
            !r) {
3852
0
            m_kind = float_kind::inf_short;
3853
0
            return it;
3854
0
        }
3855
0
        else {
3856
0
            m_kind = float_kind::inf_long;
3857
0
            return *r;
3858
0
        }
3859
0
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE8read_infINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE8read_infINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v44impl12float_readerIwE8read_infINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3840
194
    {
3841
194
        auto it = range.begin();
3842
194
        if (auto r = read_matching_string_classic_nocase(range, "inf"); !r) {
3843
194
            return unexpected(r.error());
3844
194
        }
3845
0
        else {
3846
0
            it = *r;
3847
0
        }
3848
3849
0
        if (auto r = read_matching_string_classic_nocase(
3850
0
                ranges::subrange{it, range.end()}, "inity");
3851
0
            !r) {
3852
0
            m_kind = float_kind::inf_short;
3853
0
            return it;
3854
0
        }
3855
0
        else {
3856
0
            m_kind = float_kind::inf_long;
3857
0
            return *r;
3858
0
        }
3859
0
    }
_ZN3scn2v44impl12float_readerIwE8read_infINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3840
920
    {
3841
920
        auto it = range.begin();
3842
920
        if (auto r = read_matching_string_classic_nocase(range, "inf"); !r) {
3843
920
            return unexpected(r.error());
3844
920
        }
3845
0
        else {
3846
0
            it = *r;
3847
0
        }
3848
3849
0
        if (auto r = read_matching_string_classic_nocase(
3850
0
                ranges::subrange{it, range.end()}, "inity");
3851
0
            !r) {
3852
0
            m_kind = float_kind::inf_short;
3853
0
            return it;
3854
0
        }
3855
0
        else {
3856
0
            m_kind = float_kind::inf_long;
3857
0
            return *r;
3858
0
        }
3859
0
    }
3860
3861
    template <typename Range>
3862
    auto read_nan(Range range) -> scan_expected<ranges::const_iterator_t<Range>>
3863
2.38k
    {
3864
2.38k
        auto it = range.begin();
3865
2.38k
        if (auto r = read_matching_string_classic_nocase(range, "nan"); !r) {
3866
2.38k
            return r.transform_error(map_parse_error_to_scan_error(
3867
2.38k
                scan_error::invalid_scanned_value,
3868
2.38k
                "Invalid floating-point NaN value"));
3869
2.38k
        }
3870
0
        else {
3871
0
            it = *r;
3872
0
        }
3873
3874
0
        if (auto r =
3875
0
                read_matching_code_unit(ranges::subrange{it, range.end()}, '(');
3876
0
            !r) {
3877
0
            m_kind = float_kind::nan_simple;
3878
0
            return it;
3879
0
        }
3880
0
        else {
3881
0
            it = *r;
3882
0
        }
3883
3884
0
        auto payload_beg_it = it;
3885
0
        it = read_while_code_unit(
3886
0
            ranges::subrange{it, range.end()}, [](char_type ch) noexcept {
3887
0
                return is_ascii_char(ch) &&
3888
0
                       ((ch >= '0' && ch <= '9') || (ch >= 'a' && ch <= 'z') ||
3889
0
                        (ch >= 'A' && ch <= 'Z') || ch == '_');
3890
0
            });
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_ENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_ENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_ENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_ENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_ENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_ENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_ENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_ENKUlwE_clEw
3891
0
        m_nan_payload_buffer.assign(ranges::subrange{payload_beg_it, it});
3892
3893
0
        m_kind = float_kind::nan_with_payload;
3894
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3895
0
                                             ')')) {
3896
0
            return *r;
3897
0
        }
3898
0
        return detail::unexpected_scan_error(
3899
0
            scan_error::invalid_scanned_value,
3900
0
            "Invalid floating-point NaN payload");
3901
0
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v44impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3863
358
    {
3864
358
        auto it = range.begin();
3865
358
        if (auto r = read_matching_string_classic_nocase(range, "nan"); !r) {
3866
358
            return r.transform_error(map_parse_error_to_scan_error(
3867
358
                scan_error::invalid_scanned_value,
3868
358
                "Invalid floating-point NaN value"));
3869
358
        }
3870
0
        else {
3871
0
            it = *r;
3872
0
        }
3873
3874
0
        if (auto r =
3875
0
                read_matching_code_unit(ranges::subrange{it, range.end()}, '(');
3876
0
            !r) {
3877
0
            m_kind = float_kind::nan_simple;
3878
0
            return it;
3879
0
        }
3880
0
        else {
3881
0
            it = *r;
3882
0
        }
3883
3884
0
        auto payload_beg_it = it;
3885
0
        it = read_while_code_unit(
3886
0
            ranges::subrange{it, range.end()}, [](char_type ch) noexcept {
3887
0
                return is_ascii_char(ch) &&
3888
0
                       ((ch >= '0' && ch <= '9') || (ch >= 'a' && ch <= 'z') ||
3889
0
                        (ch >= 'A' && ch <= 'Z') || ch == '_');
3890
0
            });
3891
0
        m_nan_payload_buffer.assign(ranges::subrange{payload_beg_it, it});
3892
3893
0
        m_kind = float_kind::nan_with_payload;
3894
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3895
0
                                             ')')) {
3896
0
            return *r;
3897
0
        }
3898
0
        return detail::unexpected_scan_error(
3899
0
            scan_error::invalid_scanned_value,
3900
0
            "Invalid floating-point NaN payload");
3901
0
    }
_ZN3scn2v44impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3863
908
    {
3864
908
        auto it = range.begin();
3865
908
        if (auto r = read_matching_string_classic_nocase(range, "nan"); !r) {
3866
908
            return r.transform_error(map_parse_error_to_scan_error(
3867
908
                scan_error::invalid_scanned_value,
3868
908
                "Invalid floating-point NaN value"));
3869
908
        }
3870
0
        else {
3871
0
            it = *r;
3872
0
        }
3873
3874
0
        if (auto r =
3875
0
                read_matching_code_unit(ranges::subrange{it, range.end()}, '(');
3876
0
            !r) {
3877
0
            m_kind = float_kind::nan_simple;
3878
0
            return it;
3879
0
        }
3880
0
        else {
3881
0
            it = *r;
3882
0
        }
3883
3884
0
        auto payload_beg_it = it;
3885
0
        it = read_while_code_unit(
3886
0
            ranges::subrange{it, range.end()}, [](char_type ch) noexcept {
3887
0
                return is_ascii_char(ch) &&
3888
0
                       ((ch >= '0' && ch <= '9') || (ch >= 'a' && ch <= 'z') ||
3889
0
                        (ch >= 'A' && ch <= 'Z') || ch == '_');
3890
0
            });
3891
0
        m_nan_payload_buffer.assign(ranges::subrange{payload_beg_it, it});
3892
3893
0
        m_kind = float_kind::nan_with_payload;
3894
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3895
0
                                             ')')) {
3896
0
            return *r;
3897
0
        }
3898
0
        return detail::unexpected_scan_error(
3899
0
            scan_error::invalid_scanned_value,
3900
0
            "Invalid floating-point NaN payload");
3901
0
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v44impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3863
194
    {
3864
194
        auto it = range.begin();
3865
194
        if (auto r = read_matching_string_classic_nocase(range, "nan"); !r) {
3866
194
            return r.transform_error(map_parse_error_to_scan_error(
3867
194
                scan_error::invalid_scanned_value,
3868
194
                "Invalid floating-point NaN value"));
3869
194
        }
3870
0
        else {
3871
0
            it = *r;
3872
0
        }
3873
3874
0
        if (auto r =
3875
0
                read_matching_code_unit(ranges::subrange{it, range.end()}, '(');
3876
0
            !r) {
3877
0
            m_kind = float_kind::nan_simple;
3878
0
            return it;
3879
0
        }
3880
0
        else {
3881
0
            it = *r;
3882
0
        }
3883
3884
0
        auto payload_beg_it = it;
3885
0
        it = read_while_code_unit(
3886
0
            ranges::subrange{it, range.end()}, [](char_type ch) noexcept {
3887
0
                return is_ascii_char(ch) &&
3888
0
                       ((ch >= '0' && ch <= '9') || (ch >= 'a' && ch <= 'z') ||
3889
0
                        (ch >= 'A' && ch <= 'Z') || ch == '_');
3890
0
            });
3891
0
        m_nan_payload_buffer.assign(ranges::subrange{payload_beg_it, it});
3892
3893
0
        m_kind = float_kind::nan_with_payload;
3894
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3895
0
                                             ')')) {
3896
0
            return *r;
3897
0
        }
3898
0
        return detail::unexpected_scan_error(
3899
0
            scan_error::invalid_scanned_value,
3900
0
            "Invalid floating-point NaN payload");
3901
0
    }
_ZN3scn2v44impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3863
920
    {
3864
920
        auto it = range.begin();
3865
920
        if (auto r = read_matching_string_classic_nocase(range, "nan"); !r) {
3866
920
            return r.transform_error(map_parse_error_to_scan_error(
3867
920
                scan_error::invalid_scanned_value,
3868
920
                "Invalid floating-point NaN value"));
3869
920
        }
3870
0
        else {
3871
0
            it = *r;
3872
0
        }
3873
3874
0
        if (auto r =
3875
0
                read_matching_code_unit(ranges::subrange{it, range.end()}, '(');
3876
0
            !r) {
3877
0
            m_kind = float_kind::nan_simple;
3878
0
            return it;
3879
0
        }
3880
0
        else {
3881
0
            it = *r;
3882
0
        }
3883
3884
0
        auto payload_beg_it = it;
3885
0
        it = read_while_code_unit(
3886
0
            ranges::subrange{it, range.end()}, [](char_type ch) noexcept {
3887
0
                return is_ascii_char(ch) &&
3888
0
                       ((ch >= '0' && ch <= '9') || (ch >= 'a' && ch <= 'z') ||
3889
0
                        (ch >= 'A' && ch <= 'Z') || ch == '_');
3890
0
            });
3891
0
        m_nan_payload_buffer.assign(ranges::subrange{payload_beg_it, it});
3892
3893
0
        m_kind = float_kind::nan_with_payload;
3894
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3895
0
                                             ')')) {
3896
0
            return *r;
3897
0
        }
3898
0
        return detail::unexpected_scan_error(
3899
0
            scan_error::invalid_scanned_value,
3900
0
            "Invalid floating-point NaN payload");
3901
0
    }
3902
3903
    template <typename Range>
3904
    auto read_exponent(Range range, std::string_view exp)
3905
        -> ranges::const_iterator_t<Range>
3906
34
    {
3907
34
        if (auto r = read_one_of_code_unit(range, exp)) {
3908
0
            auto beg_exp_it = range.begin();
3909
0
            auto it = *r;
3910
3911
0
            if (auto r_sign =
3912
0
                    parse_numeric_sign(ranges::subrange{it, range.end()})) {
3913
0
                it = r_sign->first;
3914
0
            }
3915
3916
0
            if (auto r_exp = read_while1_code_unit(
3917
0
                    ranges::subrange{it, range.end()},
3918
0
                    [](char_type ch) noexcept { return char_to_int(ch) < 10; });
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESP_NSN_17basic_string_viewIcNSN_11char_traitsIcEEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_NSK_17basic_string_viewIcNSK_11char_traitsIcEEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NSC_17basic_string_viewIcNSC_11char_traitsIcEEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESP_NSN_17basic_string_viewIcNSN_11char_traitsIcEEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_NSK_17basic_string_viewIcNSK_11char_traitsIcEEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NSC_17basic_string_viewIcNSC_11char_traitsIcEEEEENKUlwE_clEw
3919
0
                SCN_UNLIKELY(!r_exp)) {
3920
0
                it = beg_exp_it;
3921
0
            }
3922
0
            else {
3923
0
                it = *r_exp;
3924
0
            }
3925
3926
0
            return it;
3927
0
        }
3928
34
        return range.begin();
3929
34
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESP_NSN_17basic_string_viewIcNSN_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_NSK_17basic_string_viewIcNSK_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NSC_17basic_string_viewIcNSC_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESP_NSN_17basic_string_viewIcNSN_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEE
_ZN3scn2v44impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_NSK_17basic_string_viewIcNSK_11char_traitsIcEEEE
Line
Count
Source
3906
30
    {
3907
30
        if (auto r = read_one_of_code_unit(range, exp)) {
3908
0
            auto beg_exp_it = range.begin();
3909
0
            auto it = *r;
3910
3911
0
            if (auto r_sign =
3912
0
                    parse_numeric_sign(ranges::subrange{it, range.end()})) {
3913
0
                it = r_sign->first;
3914
0
            }
3915
3916
0
            if (auto r_exp = read_while1_code_unit(
3917
0
                    ranges::subrange{it, range.end()},
3918
0
                    [](char_type ch) noexcept { return char_to_int(ch) < 10; });
3919
0
                SCN_UNLIKELY(!r_exp)) {
3920
0
                it = beg_exp_it;
3921
0
            }
3922
0
            else {
3923
0
                it = *r_exp;
3924
0
            }
3925
3926
0
            return it;
3927
0
        }
3928
30
        return range.begin();
3929
30
    }
_ZN3scn2v44impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NSC_17basic_string_viewIcNSC_11char_traitsIcEEEE
Line
Count
Source
3906
4
    {
3907
4
        if (auto r = read_one_of_code_unit(range, exp)) {
3908
0
            auto beg_exp_it = range.begin();
3909
0
            auto it = *r;
3910
3911
0
            if (auto r_sign =
3912
0
                    parse_numeric_sign(ranges::subrange{it, range.end()})) {
3913
0
                it = r_sign->first;
3914
0
            }
3915
3916
0
            if (auto r_exp = read_while1_code_unit(
3917
0
                    ranges::subrange{it, range.end()},
3918
0
                    [](char_type ch) noexcept { return char_to_int(ch) < 10; });
3919
0
                SCN_UNLIKELY(!r_exp)) {
3920
0
                it = beg_exp_it;
3921
0
            }
3922
0
            else {
3923
0
                it = *r_exp;
3924
0
            }
3925
3926
0
            return it;
3927
0
        }
3928
4
        return range.begin();
3929
4
    }
3930
3931
    template <typename Range>
3932
    auto read_hexfloat(Range range)
3933
        -> scan_expected<ranges::const_iterator_t<Range>>
3934
24
    {
3935
24
        auto it = range.begin();
3936
3937
24
        std::ptrdiff_t digits_count = 0;
3938
24
        if (auto r = read_hex_digits(ranges::subrange{it, range.end()}, true);
3939
24
            SCN_UNLIKELY(!r)) {
3940
18
            return r.transform_error(map_parse_error_to_scan_error(
3941
18
                scan_error::invalid_scanned_value,
3942
18
                "Invalid hexadecimal floating-point value"));
3943
18
        }
3944
6
        else {
3945
6
            digits_count += ranges::distance(it, *r);
3946
6
            it = *r;
3947
6
        }
3948
3949
6
        m_integral_part_length = digits_count;
3950
6
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3951
6
                                             m_locale_options.decimal_point)) {
3952
0
            it = *r;
3953
0
        }
3954
3955
6
        if (auto r =
3956
6
                read_hex_digits(ranges::subrange{it, range.end()}, false)) {
3957
0
            digits_count += ranges::distance(it, *r);
3958
0
            it = *r;
3959
0
        }
3960
3961
6
        if (SCN_UNLIKELY(digits_count == 0)) {
3962
0
            return detail::unexpected_scan_error(
3963
0
                scan_error::invalid_scanned_value,
3964
0
                "No significand digits in hexfloat");
3965
0
        }
3966
3967
6
        it = read_exponent(ranges::subrange{it, range.end()}, "pP");
3968
3969
6
        return it;
3970
6
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v44impl12float_readerIcE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3934
8
    {
3935
8
        auto it = range.begin();
3936
3937
8
        std::ptrdiff_t digits_count = 0;
3938
8
        if (auto r = read_hex_digits(ranges::subrange{it, range.end()}, true);
3939
8
            SCN_UNLIKELY(!r)) {
3940
8
            return r.transform_error(map_parse_error_to_scan_error(
3941
8
                scan_error::invalid_scanned_value,
3942
8
                "Invalid hexadecimal floating-point value"));
3943
8
        }
3944
0
        else {
3945
0
            digits_count += ranges::distance(it, *r);
3946
0
            it = *r;
3947
0
        }
3948
3949
0
        m_integral_part_length = digits_count;
3950
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3951
0
                                             m_locale_options.decimal_point)) {
3952
0
            it = *r;
3953
0
        }
3954
3955
0
        if (auto r =
3956
0
                read_hex_digits(ranges::subrange{it, range.end()}, false)) {
3957
0
            digits_count += ranges::distance(it, *r);
3958
0
            it = *r;
3959
0
        }
3960
3961
0
        if (SCN_UNLIKELY(digits_count == 0)) {
3962
0
            return detail::unexpected_scan_error(
3963
0
                scan_error::invalid_scanned_value,
3964
0
                "No significand digits in hexfloat");
3965
0
        }
3966
3967
0
        it = read_exponent(ranges::subrange{it, range.end()}, "pP");
3968
3969
0
        return it;
3970
0
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v44impl12float_readerIwE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3934
16
    {
3935
16
        auto it = range.begin();
3936
3937
16
        std::ptrdiff_t digits_count = 0;
3938
16
        if (auto r = read_hex_digits(ranges::subrange{it, range.end()}, true);
3939
16
            SCN_UNLIKELY(!r)) {
3940
10
            return r.transform_error(map_parse_error_to_scan_error(
3941
10
                scan_error::invalid_scanned_value,
3942
10
                "Invalid hexadecimal floating-point value"));
3943
10
        }
3944
6
        else {
3945
6
            digits_count += ranges::distance(it, *r);
3946
6
            it = *r;
3947
6
        }
3948
3949
6
        m_integral_part_length = digits_count;
3950
6
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3951
6
                                             m_locale_options.decimal_point)) {
3952
0
            it = *r;
3953
0
        }
3954
3955
6
        if (auto r =
3956
6
                read_hex_digits(ranges::subrange{it, range.end()}, false)) {
3957
0
            digits_count += ranges::distance(it, *r);
3958
0
            it = *r;
3959
0
        }
3960
3961
6
        if (SCN_UNLIKELY(digits_count == 0)) {
3962
0
            return detail::unexpected_scan_error(
3963
0
                scan_error::invalid_scanned_value,
3964
0
                "No significand digits in hexfloat");
3965
0
        }
3966
3967
6
        it = read_exponent(ranges::subrange{it, range.end()}, "pP");
3968
3969
6
        return it;
3970
6
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
3971
3972
    template <typename Range>
3973
    auto read_regular_float(Range range)
3974
        -> scan_expected<ranges::const_iterator_t<Range>>
3975
572
    {
3976
572
        const bool allowed_exp = (m_options & allow_scientific) != 0;
3977
572
        const bool required_exp = allowed_exp && (m_options & allow_fixed) == 0;
3978
3979
572
        auto it = ranges::begin(range);
3980
572
        std::ptrdiff_t digits_count = 0;
3981
3982
572
        if (auto r = read_dec_digits(ranges::subrange{it, range.end()}, true);
3983
572
            SCN_UNLIKELY(!r)) {
3984
540
            return r.transform_error(
3985
540
                map_parse_error_to_scan_error(scan_error::invalid_scanned_value,
3986
540
                                              "Invalid floating-point value"));
3987
540
        }
3988
32
        else {
3989
32
            digits_count += ranges::distance(it, *r);
3990
32
            it = *r;
3991
32
        }
3992
3993
32
        m_integral_part_length = digits_count;
3994
32
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3995
32
                                             m_locale_options.decimal_point)) {
3996
0
            it = *r;
3997
0
        }
3998
3999
32
        if (auto r =
4000
32
                read_dec_digits(ranges::subrange{it, range.end()}, false)) {
4001
0
            digits_count += ranges::distance(it, *r);
4002
0
            it = *r;
4003
0
        }
4004
4005
32
        if (SCN_UNLIKELY(digits_count == 0)) {
4006
0
            return detail::unexpected_scan_error(
4007
0
                scan_error::invalid_scanned_value,
4008
0
                "No significand digits in float");
4009
0
        }
4010
4011
32
        auto beg_exp_it = it;
4012
32
        if (allowed_exp) {
4013
28
            it = read_exponent(ranges::subrange{it, range.end()}, "eE");
4014
28
        }
4015
32
        if (required_exp && beg_exp_it == it) {
4016
4
            return detail::unexpected_scan_error(
4017
4
                scan_error::invalid_scanned_value,
4018
4
                "No exponent given to scientific float");
4019
4
        }
4020
4021
28
        m_kind =
4022
28
            (beg_exp_it == it) ? float_kind::fixed : float_kind::scientific;
4023
4024
28
        return it;
4025
32
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v44impl12float_readerIcE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3975
350
    {
3976
350
        const bool allowed_exp = (m_options & allow_scientific) != 0;
3977
350
        const bool required_exp = allowed_exp && (m_options & allow_fixed) == 0;
3978
3979
350
        auto it = ranges::begin(range);
3980
350
        std::ptrdiff_t digits_count = 0;
3981
3982
350
        if (auto r = read_dec_digits(ranges::subrange{it, range.end()}, true);
3983
350
            SCN_UNLIKELY(!r)) {
3984
350
            return r.transform_error(
3985
350
                map_parse_error_to_scan_error(scan_error::invalid_scanned_value,
3986
350
                                              "Invalid floating-point value"));
3987
350
        }
3988
0
        else {
3989
0
            digits_count += ranges::distance(it, *r);
3990
0
            it = *r;
3991
0
        }
3992
3993
0
        m_integral_part_length = digits_count;
3994
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3995
0
                                             m_locale_options.decimal_point)) {
3996
0
            it = *r;
3997
0
        }
3998
3999
0
        if (auto r =
4000
0
                read_dec_digits(ranges::subrange{it, range.end()}, false)) {
4001
0
            digits_count += ranges::distance(it, *r);
4002
0
            it = *r;
4003
0
        }
4004
4005
0
        if (SCN_UNLIKELY(digits_count == 0)) {
4006
0
            return detail::unexpected_scan_error(
4007
0
                scan_error::invalid_scanned_value,
4008
0
                "No significand digits in float");
4009
0
        }
4010
4011
0
        auto beg_exp_it = it;
4012
0
        if (allowed_exp) {
4013
0
            it = read_exponent(ranges::subrange{it, range.end()}, "eE");
4014
0
        }
4015
0
        if (required_exp && beg_exp_it == it) {
4016
0
            return detail::unexpected_scan_error(
4017
0
                scan_error::invalid_scanned_value,
4018
0
                "No exponent given to scientific float");
4019
0
        }
4020
4021
0
        m_kind =
4022
0
            (beg_exp_it == it) ? float_kind::fixed : float_kind::scientific;
4023
4024
0
        return it;
4025
0
    }
_ZN3scn2v44impl12float_readerIcE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3975
22
    {
3976
22
        const bool allowed_exp = (m_options & allow_scientific) != 0;
3977
22
        const bool required_exp = allowed_exp && (m_options & allow_fixed) == 0;
3978
3979
22
        auto it = ranges::begin(range);
3980
22
        std::ptrdiff_t digits_count = 0;
3981
3982
22
        if (auto r = read_dec_digits(ranges::subrange{it, range.end()}, true);
3983
22
            SCN_UNLIKELY(!r)) {
3984
22
            return r.transform_error(
3985
22
                map_parse_error_to_scan_error(scan_error::invalid_scanned_value,
3986
22
                                              "Invalid floating-point value"));
3987
22
        }
3988
0
        else {
3989
0
            digits_count += ranges::distance(it, *r);
3990
0
            it = *r;
3991
0
        }
3992
3993
0
        m_integral_part_length = digits_count;
3994
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3995
0
                                             m_locale_options.decimal_point)) {
3996
0
            it = *r;
3997
0
        }
3998
3999
0
        if (auto r =
4000
0
                read_dec_digits(ranges::subrange{it, range.end()}, false)) {
4001
0
            digits_count += ranges::distance(it, *r);
4002
0
            it = *r;
4003
0
        }
4004
4005
0
        if (SCN_UNLIKELY(digits_count == 0)) {
4006
0
            return detail::unexpected_scan_error(
4007
0
                scan_error::invalid_scanned_value,
4008
0
                "No significand digits in float");
4009
0
        }
4010
4011
0
        auto beg_exp_it = it;
4012
0
        if (allowed_exp) {
4013
0
            it = read_exponent(ranges::subrange{it, range.end()}, "eE");
4014
0
        }
4015
0
        if (required_exp && beg_exp_it == it) {
4016
0
            return detail::unexpected_scan_error(
4017
0
                scan_error::invalid_scanned_value,
4018
0
                "No exponent given to scientific float");
4019
0
        }
4020
4021
0
        m_kind =
4022
0
            (beg_exp_it == it) ? float_kind::fixed : float_kind::scientific;
4023
4024
0
        return it;
4025
0
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v44impl12float_readerIwE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3975
178
    {
3976
178
        const bool allowed_exp = (m_options & allow_scientific) != 0;
3977
178
        const bool required_exp = allowed_exp && (m_options & allow_fixed) == 0;
3978
3979
178
        auto it = ranges::begin(range);
3980
178
        std::ptrdiff_t digits_count = 0;
3981
3982
178
        if (auto r = read_dec_digits(ranges::subrange{it, range.end()}, true);
3983
178
            SCN_UNLIKELY(!r)) {
3984
152
            return r.transform_error(
3985
152
                map_parse_error_to_scan_error(scan_error::invalid_scanned_value,
3986
152
                                              "Invalid floating-point value"));
3987
152
        }
3988
26
        else {
3989
26
            digits_count += ranges::distance(it, *r);
3990
26
            it = *r;
3991
26
        }
3992
3993
26
        m_integral_part_length = digits_count;
3994
26
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3995
26
                                             m_locale_options.decimal_point)) {
3996
0
            it = *r;
3997
0
        }
3998
3999
26
        if (auto r =
4000
26
                read_dec_digits(ranges::subrange{it, range.end()}, false)) {
4001
0
            digits_count += ranges::distance(it, *r);
4002
0
            it = *r;
4003
0
        }
4004
4005
26
        if (SCN_UNLIKELY(digits_count == 0)) {
4006
0
            return detail::unexpected_scan_error(
4007
0
                scan_error::invalid_scanned_value,
4008
0
                "No significand digits in float");
4009
0
        }
4010
4011
26
        auto beg_exp_it = it;
4012
26
        if (allowed_exp) {
4013
24
            it = read_exponent(ranges::subrange{it, range.end()}, "eE");
4014
24
        }
4015
26
        if (required_exp && beg_exp_it == it) {
4016
2
            return detail::unexpected_scan_error(
4017
2
                scan_error::invalid_scanned_value,
4018
2
                "No exponent given to scientific float");
4019
2
        }
4020
4021
24
        m_kind =
4022
24
            (beg_exp_it == it) ? float_kind::fixed : float_kind::scientific;
4023
4024
24
        return it;
4025
26
    }
_ZN3scn2v44impl12float_readerIwE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3975
22
    {
3976
22
        const bool allowed_exp = (m_options & allow_scientific) != 0;
3977
22
        const bool required_exp = allowed_exp && (m_options & allow_fixed) == 0;
3978
3979
22
        auto it = ranges::begin(range);
3980
22
        std::ptrdiff_t digits_count = 0;
3981
3982
22
        if (auto r = read_dec_digits(ranges::subrange{it, range.end()}, true);
3983
22
            SCN_UNLIKELY(!r)) {
3984
16
            return r.transform_error(
3985
16
                map_parse_error_to_scan_error(scan_error::invalid_scanned_value,
3986
16
                                              "Invalid floating-point value"));
3987
16
        }
3988
6
        else {
3989
6
            digits_count += ranges::distance(it, *r);
3990
6
            it = *r;
3991
6
        }
3992
3993
6
        m_integral_part_length = digits_count;
3994
6
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3995
6
                                             m_locale_options.decimal_point)) {
3996
0
            it = *r;
3997
0
        }
3998
3999
6
        if (auto r =
4000
6
                read_dec_digits(ranges::subrange{it, range.end()}, false)) {
4001
0
            digits_count += ranges::distance(it, *r);
4002
0
            it = *r;
4003
0
        }
4004
4005
6
        if (SCN_UNLIKELY(digits_count == 0)) {
4006
0
            return detail::unexpected_scan_error(
4007
0
                scan_error::invalid_scanned_value,
4008
0
                "No significand digits in float");
4009
0
        }
4010
4011
6
        auto beg_exp_it = it;
4012
6
        if (allowed_exp) {
4013
4
            it = read_exponent(ranges::subrange{it, range.end()}, "eE");
4014
4
        }
4015
6
        if (required_exp && beg_exp_it == it) {
4016
2
            return detail::unexpected_scan_error(
4017
2
                scan_error::invalid_scanned_value,
4018
2
                "No exponent given to scientific float");
4019
2
        }
4020
4021
4
        m_kind =
4022
4
            (beg_exp_it == it) ? float_kind::fixed : float_kind::scientific;
4023
4024
4
        return it;
4025
6
    }
4026
4027
    template <typename Range, typename ReadRegular, typename ReadHex>
4028
    auto do_read_source_impl(Range range,
4029
                             ReadRegular&& read_regular,
4030
                             ReadHex&& read_hex)
4031
        -> scan_expected<ranges::const_iterator_t<Range>>
4032
2.38k
    {
4033
2.38k
        const bool allowed_hex = (m_options & allow_hex) != 0;
4034
2.38k
        const bool allowed_nonhex =
4035
2.38k
            (m_options & ~static_cast<unsigned>(allow_thsep) &
4036
2.38k
             ~static_cast<unsigned>(allow_hex)) != 0;
4037
4038
2.38k
        if (auto r = read_inf(range); !r && m_kind != float_kind::tbd) {
4039
0
            return r.transform_error(map_parse_error_to_scan_error(
4040
0
                scan_error::invalid_scanned_value,
4041
0
                "Invalid infinite floating-point value"));
4042
0
        }
4043
2.38k
        else if (r) {
4044
0
            return *r;
4045
0
        }
4046
4047
2.38k
        if (auto r = read_nan(range); !r && m_kind != float_kind::tbd) {
4048
0
            return unexpected(r.error());
4049
0
        }
4050
2.38k
        else if (r) {
4051
0
            return *r;
4052
0
        }
4053
4054
2.38k
        if (allowed_hex && !allowed_nonhex) {
4055
            // only hex allowed:
4056
            // prefix "0x" allowed, not required
4057
106
            auto it = range.begin();
4058
4059
106
            if (auto r = read_hex_prefix(range)) {
4060
0
                m_kind = float_kind::hex_with_prefix;
4061
0
                it = *r;
4062
0
            }
4063
106
            else {
4064
106
                m_kind = float_kind::hex_without_prefix;
4065
106
            }
4066
4067
106
            return read_hex(ranges::subrange{it, range.end()});
4068
106
        }
4069
2.27k
        if (!allowed_hex && allowed_nonhex) {
4070
            // only nonhex allowed:
4071
            // no prefix allowed
4072
86
            m_kind = float_kind::generic;
4073
86
            return read_regular_float(range);
4074
86
        }
4075
        // both hex and nonhex allowed:
4076
        // check for "0x" prefix -> hex,
4077
        // regular otherwise
4078
4079
2.18k
        if (auto r = read_hex_prefix(range); SCN_UNLIKELY(r)) {
4080
0
            m_kind = float_kind::hex_with_prefix;
4081
0
            return read_hex(ranges::subrange{*r, range.end()});
4082
0
        }
4083
4084
2.18k
        m_kind = float_kind::generic;
4085
2.18k
        return read_regular(range);
4086
2.18k
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEZNS3_16read_source_implISJ_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlRKSR_E_ZNSN_ISJ_EESW_SR_EUlSY_E0_EESW_SR_OT0_OT1_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_16read_source_implISE_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlRKSJ_E_ZNSF_ISE_EESO_SJ_EUlSQ_E0_EESO_SJ_OT0_OT1_
_ZN3scn2v44impl12float_readerIcE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEZNS3_16read_source_implISG_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_EUlRKSO_E_ZNSK_ISG_EEST_SO_EUlSV_E0_EEST_SO_OT0_OT1_
Line
Count
Source
4032
358
    {
4033
358
        const bool allowed_hex = (m_options & allow_hex) != 0;
4034
358
        const bool allowed_nonhex =
4035
358
            (m_options & ~static_cast<unsigned>(allow_thsep) &
4036
358
             ~static_cast<unsigned>(allow_hex)) != 0;
4037
4038
358
        if (auto r = read_inf(range); !r && m_kind != float_kind::tbd) {
4039
0
            return r.transform_error(map_parse_error_to_scan_error(
4040
0
                scan_error::invalid_scanned_value,
4041
0
                "Invalid infinite floating-point value"));
4042
0
        }
4043
358
        else if (r) {
4044
0
            return *r;
4045
0
        }
4046
4047
358
        if (auto r = read_nan(range); !r && m_kind != float_kind::tbd) {
4048
0
            return unexpected(r.error());
4049
0
        }
4050
358
        else if (r) {
4051
0
            return *r;
4052
0
        }
4053
4054
358
        if (allowed_hex && !allowed_nonhex) {
4055
            // only hex allowed:
4056
            // prefix "0x" allowed, not required
4057
8
            auto it = range.begin();
4058
4059
8
            if (auto r = read_hex_prefix(range)) {
4060
0
                m_kind = float_kind::hex_with_prefix;
4061
0
                it = *r;
4062
0
            }
4063
8
            else {
4064
8
                m_kind = float_kind::hex_without_prefix;
4065
8
            }
4066
4067
8
            return read_hex(ranges::subrange{it, range.end()});
4068
8
        }
4069
350
        if (!allowed_hex && allowed_nonhex) {
4070
            // only nonhex allowed:
4071
            // no prefix allowed
4072
30
            m_kind = float_kind::generic;
4073
30
            return read_regular_float(range);
4074
30
        }
4075
        // both hex and nonhex allowed:
4076
        // check for "0x" prefix -> hex,
4077
        // regular otherwise
4078
4079
320
        if (auto r = read_hex_prefix(range); SCN_UNLIKELY(r)) {
4080
0
            m_kind = float_kind::hex_with_prefix;
4081
0
            return read_hex(ranges::subrange{*r, range.end()});
4082
0
        }
4083
4084
320
        m_kind = float_kind::generic;
4085
320
        return read_regular(range);
4086
320
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIcE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_16read_source_implISB_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_EUlRKSG_E_ZNSC_ISB_EESL_SG_EUlSN_E0_EESL_SG_OT0_OT1_
_ZN3scn2v44impl12float_readerIcE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EERZNS3_16read_source_implISB_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_EUlRKSG_E1_SP_EESL_SG_OT0_OT1_
Line
Count
Source
4032
908
    {
4033
908
        const bool allowed_hex = (m_options & allow_hex) != 0;
4034
908
        const bool allowed_nonhex =
4035
908
            (m_options & ~static_cast<unsigned>(allow_thsep) &
4036
908
             ~static_cast<unsigned>(allow_hex)) != 0;
4037
4038
908
        if (auto r = read_inf(range); !r && m_kind != float_kind::tbd) {
4039
0
            return r.transform_error(map_parse_error_to_scan_error(
4040
0
                scan_error::invalid_scanned_value,
4041
0
                "Invalid infinite floating-point value"));
4042
0
        }
4043
908
        else if (r) {
4044
0
            return *r;
4045
0
        }
4046
4047
908
        if (auto r = read_nan(range); !r && m_kind != float_kind::tbd) {
4048
0
            return unexpected(r.error());
4049
0
        }
4050
908
        else if (r) {
4051
0
            return *r;
4052
0
        }
4053
4054
908
        if (allowed_hex && !allowed_nonhex) {
4055
            // only hex allowed:
4056
            // prefix "0x" allowed, not required
4057
8
            auto it = range.begin();
4058
4059
8
            if (auto r = read_hex_prefix(range)) {
4060
0
                m_kind = float_kind::hex_with_prefix;
4061
0
                it = *r;
4062
0
            }
4063
8
            else {
4064
8
                m_kind = float_kind::hex_without_prefix;
4065
8
            }
4066
4067
8
            return read_hex(ranges::subrange{it, range.end()});
4068
8
        }
4069
900
        if (!allowed_hex && allowed_nonhex) {
4070
            // only nonhex allowed:
4071
            // no prefix allowed
4072
22
            m_kind = float_kind::generic;
4073
22
            return read_regular_float(range);
4074
22
        }
4075
        // both hex and nonhex allowed:
4076
        // check for "0x" prefix -> hex,
4077
        // regular otherwise
4078
4079
878
        if (auto r = read_hex_prefix(range); SCN_UNLIKELY(r)) {
4080
0
            m_kind = float_kind::hex_with_prefix;
4081
0
            return read_hex(ranges::subrange{*r, range.end()});
4082
0
        }
4083
4084
878
        m_kind = float_kind::generic;
4085
878
        return read_regular(range);
4086
878
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEZNS3_16read_source_implISJ_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlRKSR_E_ZNSN_ISJ_EESW_SR_EUlSY_E0_EESW_SR_OT0_OT1_
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_16read_source_implISE_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlRKSJ_E_ZNSF_ISE_EESO_SJ_EUlSQ_E0_EESO_SJ_OT0_OT1_
_ZN3scn2v44impl12float_readerIwE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEZNS3_16read_source_implISG_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_EUlRKSO_E_ZNSK_ISG_EEST_SO_EUlSV_E0_EEST_SO_OT0_OT1_
Line
Count
Source
4032
194
    {
4033
194
        const bool allowed_hex = (m_options & allow_hex) != 0;
4034
194
        const bool allowed_nonhex =
4035
194
            (m_options & ~static_cast<unsigned>(allow_thsep) &
4036
194
             ~static_cast<unsigned>(allow_hex)) != 0;
4037
4038
194
        if (auto r = read_inf(range); !r && m_kind != float_kind::tbd) {
4039
0
            return r.transform_error(map_parse_error_to_scan_error(
4040
0
                scan_error::invalid_scanned_value,
4041
0
                "Invalid infinite floating-point value"));
4042
0
        }
4043
194
        else if (r) {
4044
0
            return *r;
4045
0
        }
4046
4047
194
        if (auto r = read_nan(range); !r && m_kind != float_kind::tbd) {
4048
0
            return unexpected(r.error());
4049
0
        }
4050
194
        else if (r) {
4051
0
            return *r;
4052
0
        }
4053
4054
194
        if (allowed_hex && !allowed_nonhex) {
4055
            // only hex allowed:
4056
            // prefix "0x" allowed, not required
4057
16
            auto it = range.begin();
4058
4059
16
            if (auto r = read_hex_prefix(range)) {
4060
0
                m_kind = float_kind::hex_with_prefix;
4061
0
                it = *r;
4062
0
            }
4063
16
            else {
4064
16
                m_kind = float_kind::hex_without_prefix;
4065
16
            }
4066
4067
16
            return read_hex(ranges::subrange{it, range.end()});
4068
16
        }
4069
178
        if (!allowed_hex && allowed_nonhex) {
4070
            // only nonhex allowed:
4071
            // no prefix allowed
4072
12
            m_kind = float_kind::generic;
4073
12
            return read_regular_float(range);
4074
12
        }
4075
        // both hex and nonhex allowed:
4076
        // check for "0x" prefix -> hex,
4077
        // regular otherwise
4078
4079
166
        if (auto r = read_hex_prefix(range); SCN_UNLIKELY(r)) {
4080
0
            m_kind = float_kind::hex_with_prefix;
4081
0
            return read_hex(ranges::subrange{*r, range.end()});
4082
0
        }
4083
4084
166
        m_kind = float_kind::generic;
4085
166
        return read_regular(range);
4086
166
    }
Unexecuted instantiation: _ZN3scn2v44impl12float_readerIwE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_16read_source_implISB_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_EUlRKSG_E_ZNSC_ISB_EESL_SG_EUlSN_E0_EESL_SG_OT0_OT1_
_ZN3scn2v44impl12float_readerIwE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EERZNS3_16read_source_implISB_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_EUlRKSG_E1_SP_EESL_SG_OT0_OT1_
Line
Count
Source
4032
920
    {
4033
920
        const bool allowed_hex = (m_options & allow_hex) != 0;
4034
920
        const bool allowed_nonhex =
4035
920
            (m_options & ~static_cast<unsigned>(allow_thsep) &
4036
920
             ~static_cast<unsigned>(allow_hex)) != 0;
4037
4038
920
        if (auto r = read_inf(range); !r && m_kind != float_kind::tbd) {
4039
0
            return r.transform_error(map_parse_error_to_scan_error(
4040
0
                scan_error::invalid_scanned_value,
4041
0
                "Invalid infinite floating-point value"));
4042
0
        }
4043
920
        else if (r) {
4044
0
            return *r;
4045
0
        }
4046
4047
920
        if (auto r = read_nan(range); !r && m_kind != float_kind::tbd) {
4048
0
            return unexpected(r.error());
4049
0
        }
4050
920
        else if (r) {
4051
0
            return *r;
4052
0
        }
4053
4054
920
        if (allowed_hex && !allowed_nonhex) {
4055
            // only hex allowed:
4056
            // prefix "0x" allowed, not required
4057
74
            auto it = range.begin();
4058
4059
74
            if (auto r = read_hex_prefix(range)) {
4060
0
                m_kind = float_kind::hex_with_prefix;
4061
0
                it = *r;
4062
0
            }
4063
74
            else {
4064
74
                m_kind = float_kind::hex_without_prefix;
4065
74
            }
4066
4067
74
            return read_hex(ranges::subrange{it, range.end()});
4068
74
        }
4069
846
        if (!allowed_hex && allowed_nonhex) {
4070
            // only nonhex allowed:
4071
            // no prefix allowed
4072
22
            m_kind = float_kind::generic;
4073
22
            return read_regular_float(range);
4074
22
        }
4075
        // both hex and nonhex allowed:
4076
        // check for "0x" prefix -> hex,
4077
        // regular otherwise
4078
4079
824
        if (auto r = read_hex_prefix(range); SCN_UNLIKELY(r)) {
4080
0
            m_kind = float_kind::hex_with_prefix;
4081
0
            return read_hex(ranges::subrange{*r, range.end()});
4082
0
        }
4083
4084
824
        m_kind = float_kind::generic;
4085
824
        return read_regular(range);
4086
824
    }
4087
4088
    void handle_separators()
4089
1.81k
    {
4090
1.81k
        if (m_locale_options.thousands_sep == 0 &&
4091
1.81k
            m_locale_options.decimal_point == CharT{'.'}) {
4092
1.81k
            return;
4093
1.81k
        }
4094
4095
0
        auto& str = this->m_buffer.make_into_allocated_string();
4096
0
        if (m_locale_options.decimal_point != CharT{'.'}) {
4097
0
            for (auto& ch : str) {
4098
0
                if (ch == m_locale_options.decimal_point) {
4099
0
                    ch = CharT{'.'};
4100
0
                }
4101
0
            }
4102
0
        }
4103
4104
0
        if (m_locale_options.thousands_sep == 0) {
4105
0
            return;
4106
0
        }
4107
4108
0
        auto first =
4109
0
            std::find(str.begin(), str.end(), m_locale_options.thousands_sep);
4110
0
        if (first == str.end()) {
4111
0
            return;
4112
0
        }
4113
4114
0
        m_thsep_indices.push_back(
4115
0
            static_cast<char>(ranges::distance(str.begin(), first)));
4116
4117
0
        for (auto it = first; ++it != str.end();) {
4118
0
            if (*it != m_locale_options.thousands_sep) {
4119
0
                *first++ = std::move(*it);
4120
0
            }
4121
0
            else {
4122
0
                m_thsep_indices.push_back(
4123
0
                    static_cast<char>(ranges::distance(str.begin(), it)));
4124
0
            }
4125
0
        }
4126
4127
0
        str.erase(first, str.end());
4128
0
    }
scn::v4::impl::float_reader<char>::handle_separators()
Line
Count
Source
4089
886
    {
4090
886
        if (m_locale_options.thousands_sep == 0 &&
4091
886
            m_locale_options.decimal_point == CharT{'.'}) {
4092
886
            return;
4093
886
        }
4094
4095
0
        auto& str = this->m_buffer.make_into_allocated_string();
4096
0
        if (m_locale_options.decimal_point != CharT{'.'}) {
4097
0
            for (auto& ch : str) {
4098
0
                if (ch == m_locale_options.decimal_point) {
4099
0
                    ch = CharT{'.'};
4100
0
                }
4101
0
            }
4102
0
        }
4103
4104
0
        if (m_locale_options.thousands_sep == 0) {
4105
0
            return;
4106
0
        }
4107
4108
0
        auto first =
4109
0
            std::find(str.begin(), str.end(), m_locale_options.thousands_sep);
4110
0
        if (first == str.end()) {
4111
0
            return;
4112
0
        }
4113
4114
0
        m_thsep_indices.push_back(
4115
0
            static_cast<char>(ranges::distance(str.begin(), first)));
4116
4117
0
        for (auto it = first; ++it != str.end();) {
4118
0
            if (*it != m_locale_options.thousands_sep) {
4119
0
                *first++ = std::move(*it);
4120
0
            }
4121
0
            else {
4122
0
                m_thsep_indices.push_back(
4123
0
                    static_cast<char>(ranges::distance(str.begin(), it)));
4124
0
            }
4125
0
        }
4126
4127
0
        str.erase(first, str.end());
4128
0
    }
scn::v4::impl::float_reader<wchar_t>::handle_separators()
Line
Count
Source
4089
932
    {
4090
932
        if (m_locale_options.thousands_sep == 0 &&
4091
932
            m_locale_options.decimal_point == CharT{'.'}) {
4092
932
            return;
4093
932
        }
4094
4095
0
        auto& str = this->m_buffer.make_into_allocated_string();
4096
0
        if (m_locale_options.decimal_point != CharT{'.'}) {
4097
0
            for (auto& ch : str) {
4098
0
                if (ch == m_locale_options.decimal_point) {
4099
0
                    ch = CharT{'.'};
4100
0
                }
4101
0
            }
4102
0
        }
4103
4104
0
        if (m_locale_options.thousands_sep == 0) {
4105
0
            return;
4106
0
        }
4107
4108
0
        auto first =
4109
0
            std::find(str.begin(), str.end(), m_locale_options.thousands_sep);
4110
0
        if (first == str.end()) {
4111
0
            return;
4112
0
        }
4113
4114
0
        m_thsep_indices.push_back(
4115
0
            static_cast<char>(ranges::distance(str.begin(), first)));
4116
4117
0
        for (auto it = first; ++it != str.end();) {
4118
0
            if (*it != m_locale_options.thousands_sep) {
4119
0
                *first++ = std::move(*it);
4120
0
            }
4121
0
            else {
4122
0
                m_thsep_indices.push_back(
4123
0
                    static_cast<char>(ranges::distance(str.begin(), it)));
4124
0
            }
4125
0
        }
4126
4127
0
        str.erase(first, str.end());
4128
0
    }
4129
4130
    template <typename T>
4131
    T setsign(T value) const
4132
108
    {
4133
108
        if (m_sign == sign_type::minus_sign) {
4134
0
            return std::copysign(value, T{-1.0});
4135
0
        }
4136
108
        return std::copysign(value, T{1.0});
4137
108
    }
Unexecuted instantiation: float scn::v4::impl::float_reader<char>::setsign<float>(float) const
Unexecuted instantiation: float scn::v4::impl::float_reader<wchar_t>::setsign<float>(float) const
Unexecuted instantiation: double scn::v4::impl::float_reader<char>::setsign<double>(double) const
double scn::v4::impl::float_reader<wchar_t>::setsign<double>(double) const
Line
Count
Source
4132
108
    {
4133
108
        if (m_sign == sign_type::minus_sign) {
4134
0
            return std::copysign(value, T{-1.0});
4135
0
        }
4136
108
        return std::copysign(value, T{1.0});
4137
108
    }
Unexecuted instantiation: long double scn::v4::impl::float_reader<char>::setsign<long double>(long double) const
Unexecuted instantiation: long double scn::v4::impl::float_reader<wchar_t>::setsign<long double>(long double) const
4138
4139
    template <typename T>
4140
    scan_expected<std::ptrdiff_t> parse_value_impl(T& value);
4141
4142
    localized_number_formatting_options<CharT> m_locale_options{};
4143
    std::string m_thsep_indices{};
4144
    contiguous_range_factory<CharT> m_nan_payload_buffer{};
4145
    std::ptrdiff_t m_integral_part_length{-1};
4146
    sign_type m_sign{sign_type::default_sign};
4147
    float_kind m_kind{float_kind::tbd};
4148
};
4149
4150
#define SCN_DECLARE_FLOAT_READER_TEMPLATE(CharT, FloatT)                \
4151
    extern template auto float_reader<CharT>::parse_value_impl(FloatT&) \
4152
        -> scan_expected<std::ptrdiff_t>;
4153
4154
#if !SCN_DISABLE_TYPE_FLOAT
4155
SCN_DECLARE_FLOAT_READER_TEMPLATE(char, float)
4156
SCN_DECLARE_FLOAT_READER_TEMPLATE(wchar_t, float)
4157
#endif
4158
#if !SCN_DISABLE_TYPE_DOUBLE
4159
SCN_DECLARE_FLOAT_READER_TEMPLATE(char, double)
4160
SCN_DECLARE_FLOAT_READER_TEMPLATE(wchar_t, double)
4161
#endif
4162
#if !SCN_DISABLE_TYPE_LONG_DOUBLE
4163
SCN_DECLARE_FLOAT_READER_TEMPLATE(char, long double)
4164
SCN_DECLARE_FLOAT_READER_TEMPLATE(wchar_t, long double)
4165
#endif
4166
4167
#undef SCN_DECLARE_FLOAT_READER_TEMPLATE
4168
4169
template <typename CharT>
4170
class reader_impl_for_float
4171
    : public reader_base<reader_impl_for_float<CharT>, CharT> {
4172
public:
4173
    constexpr reader_impl_for_float() = default;
4174
4175
    void check_specs_impl(const detail::format_specs& specs,
4176
                          reader_error_handler& eh)
4177
3.62k
    {
4178
3.62k
        detail::check_float_type_specs(specs, eh);
4179
3.62k
    }
scn::v4::impl::reader_impl_for_float<char>::check_specs_impl(scn::v4::detail::format_specs const&, scn::v4::impl::reader_error_handler&)
Line
Count
Source
4177
2.41k
    {
4178
2.41k
        detail::check_float_type_specs(specs, eh);
4179
2.41k
    }
scn::v4::impl::reader_impl_for_float<wchar_t>::check_specs_impl(scn::v4::detail::format_specs const&, scn::v4::impl::reader_error_handler&)
Line
Count
Source
4177
1.20k
    {
4178
1.20k
        detail::check_float_type_specs(specs, eh);
4179
1.20k
    }
4180
4181
    template <typename Range, typename T>
4182
    auto read_default(Range range, T& value, detail::locale_ref loc)
4183
        -> scan_expected<ranges::const_iterator_t<Range>>
4184
1.10k
    {
4185
1.10k
        SCN_UNUSED(loc);
4186
4187
1.10k
        float_reader<CharT> rd{};
4188
1.10k
        return read_impl<Range>(
4189
1.10k
            range, rd,
4190
1.10k
            [](float_reader<CharT>& r, auto&&... args) {
4191
1.10k
                return r.read_source(SCN_FWD(args)...);
4192
1.10k
            },
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSB_SO_EEEDaSR_SU_
_ZZN3scn2v44impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSB_SO_EEEDaSR_SU_
Line
Count
Source
4190
624
            [](float_reader<CharT>& r, auto&&... args) {
4191
624
                return r.read_source(SCN_FWD(args)...);
4192
624
            },
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSB_SO_EEEDaSR_SU_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSE_SQ_EEEDaST_SW_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSE_SQ_EEEDaST_SW_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSE_SQ_EEEDaST_SW_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSB_SO_EEEDaSR_SU_
_ZZN3scn2v44impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSB_SO_EEEDaSR_SU_
Line
Count
Source
4190
476
            [](float_reader<CharT>& r, auto&&... args) {
4191
476
                return r.read_source(SCN_FWD(args)...);
4192
476
            },
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSB_SO_EEEDaSR_SU_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSE_SQ_EEEDaST_SW_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSE_SQ_EEEDaST_SW_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSE_SQ_EEEDaST_SW_
4193
1.10k
            value);
4194
1.10k
    }
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
_ZN3scn2v44impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Line
Count
Source
4184
624
    {
4185
624
        SCN_UNUSED(loc);
4186
4187
624
        float_reader<CharT> rd{};
4188
624
        return read_impl<Range>(
4189
624
            range, rd,
4190
624
            [](float_reader<CharT>& r, auto&&... args) {
4191
624
                return r.read_source(SCN_FWD(args)...);
4192
624
            },
4193
624
            value);
4194
624
    }
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
_ZN3scn2v44impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Line
Count
Source
4184
476
    {
4185
476
        SCN_UNUSED(loc);
4186
4187
476
        float_reader<CharT> rd{};
4188
476
        return read_impl<Range>(
4189
476
            range, rd,
4190
476
            [](float_reader<CharT>& r, auto&&... args) {
4191
476
                return r.read_source(SCN_FWD(args)...);
4192
476
            },
4193
476
            value);
4194
476
    }
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
4195
4196
    template <typename Range, typename T>
4197
    auto read_specs(Range range,
4198
                    const detail::format_specs& specs,
4199
                    T& value,
4200
                    detail::locale_ref loc)
4201
        -> scan_expected<ranges::const_iterator_t<Range>>
4202
1.28k
    {
4203
1.28k
        float_reader<CharT> rd{get_options(specs)};
4204
4205
1.28k
#if !SCN_DISABLE_LOCALE
4206
1.28k
        if (specs.localized) {
4207
46
            return read_impl<Range>(
4208
46
                range, rd,
4209
46
                [](float_reader<CharT>& r, auto&&... args) {
4210
46
                    return r.read_source_localized(SCN_FWD(args)...);
4211
46
                },
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSB_SR_EEEDaSU_SX_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSE_ST_EEEDaSW_SZ_
_ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSD_ST_EEEDaSW_SZ_
Line
Count
Source
4209
12
                [](float_reader<CharT>& r, auto&&... args) {
4210
12
                    return r.read_source_localized(SCN_FWD(args)...);
4211
12
                },
_ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSB_SR_EEEDaSU_SX_
Line
Count
Source
4209
6
                [](float_reader<CharT>& r, auto&&... args) {
4210
6
                    return r.read_source_localized(SCN_FWD(args)...);
4211
6
                },
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSB_SR_EEEDaSU_SX_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSB_SR_EEEDaSU_SX_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSE_ST_EEEDaSW_SZ_
_ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSD_ST_EEEDaSW_SZ_
Line
Count
Source
4209
14
                [](float_reader<CharT>& r, auto&&... args) {
4210
14
                    return r.read_source_localized(SCN_FWD(args)...);
4211
14
                },
_ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSB_SR_EEEDaSU_SX_
Line
Count
Source
4209
14
                [](float_reader<CharT>& r, auto&&... args) {
4210
14
                    return r.read_source_localized(SCN_FWD(args)...);
4211
14
                },
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSB_SR_EEEDaSU_SX_
4212
46
                value, loc);
4213
46
        }
4214
1.23k
#endif
4215
4216
1.23k
        return read_impl<Range>(
4217
1.23k
            range, rd,
4218
1.23k
            [](float_reader<CharT>& r, auto&&... args) {
4219
1.23k
                return r.read_source(SCN_FWD(args)...);
4220
1.23k
            },
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSB_SR_EEEDaSU_SX_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSE_ST_EEEDaSW_SZ_
_ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSD_ST_EEEDaSW_SZ_
Line
Count
Source
4218
346
            [](float_reader<CharT>& r, auto&&... args) {
4219
346
                return r.read_source(SCN_FWD(args)...);
4220
346
            },
_ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSB_SR_EEEDaSU_SX_
Line
Count
Source
4218
278
            [](float_reader<CharT>& r, auto&&... args) {
4219
278
                return r.read_source(SCN_FWD(args)...);
4220
278
            },
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSB_SR_EEEDaSU_SX_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSB_SR_EEEDaSU_SX_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSE_ST_EEEDaSW_SZ_
_ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSD_ST_EEEDaSW_SZ_
Line
Count
Source
4218
180
            [](float_reader<CharT>& r, auto&&... args) {
4219
180
                return r.read_source(SCN_FWD(args)...);
4220
180
            },
_ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSB_SR_EEEDaSU_SX_
Line
Count
Source
4218
430
            [](float_reader<CharT>& r, auto&&... args) {
4219
430
                return r.read_source(SCN_FWD(args)...);
4220
430
            },
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSB_SR_EEEDaSU_SX_
4221
1.23k
            value);
4222
1.28k
    }
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
4202
358
    {
4203
358
        float_reader<CharT> rd{get_options(specs)};
4204
4205
358
#if !SCN_DISABLE_LOCALE
4206
358
        if (specs.localized) {
4207
12
            return read_impl<Range>(
4208
12
                range, rd,
4209
12
                [](float_reader<CharT>& r, auto&&... args) {
4210
12
                    return r.read_source_localized(SCN_FWD(args)...);
4211
12
                },
4212
12
                value, loc);
4213
12
        }
4214
346
#endif
4215
4216
346
        return read_impl<Range>(
4217
346
            range, rd,
4218
346
            [](float_reader<CharT>& r, auto&&... args) {
4219
346
                return r.read_source(SCN_FWD(args)...);
4220
346
            },
4221
346
            value);
4222
358
    }
_ZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
4202
284
    {
4203
284
        float_reader<CharT> rd{get_options(specs)};
4204
4205
284
#if !SCN_DISABLE_LOCALE
4206
284
        if (specs.localized) {
4207
6
            return read_impl<Range>(
4208
6
                range, rd,
4209
6
                [](float_reader<CharT>& r, auto&&... args) {
4210
6
                    return r.read_source_localized(SCN_FWD(args)...);
4211
6
                },
4212
6
                value, loc);
4213
6
        }
4214
278
#endif
4215
4216
278
        return read_impl<Range>(
4217
278
            range, rd,
4218
278
            [](float_reader<CharT>& r, auto&&... args) {
4219
278
                return r.read_source(SCN_FWD(args)...);
4220
278
            },
4221
278
            value);
4222
284
    }
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
4202
194
    {
4203
194
        float_reader<CharT> rd{get_options(specs)};
4204
4205
194
#if !SCN_DISABLE_LOCALE
4206
194
        if (specs.localized) {
4207
14
            return read_impl<Range>(
4208
14
                range, rd,
4209
14
                [](float_reader<CharT>& r, auto&&... args) {
4210
14
                    return r.read_source_localized(SCN_FWD(args)...);
4211
14
                },
4212
14
                value, loc);
4213
14
        }
4214
180
#endif
4215
4216
180
        return read_impl<Range>(
4217
180
            range, rd,
4218
180
            [](float_reader<CharT>& r, auto&&... args) {
4219
180
                return r.read_source(SCN_FWD(args)...);
4220
180
            },
4221
180
            value);
4222
194
    }
_ZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
4202
444
    {
4203
444
        float_reader<CharT> rd{get_options(specs)};
4204
4205
444
#if !SCN_DISABLE_LOCALE
4206
444
        if (specs.localized) {
4207
14
            return read_impl<Range>(
4208
14
                range, rd,
4209
14
                [](float_reader<CharT>& r, auto&&... args) {
4210
14
                    return r.read_source_localized(SCN_FWD(args)...);
4211
14
                },
4212
14
                value, loc);
4213
14
        }
4214
430
#endif
4215
4216
430
        return read_impl<Range>(
4217
430
            range, rd,
4218
430
            [](float_reader<CharT>& r, auto&&... args) {
4219
430
                return r.read_source(SCN_FWD(args)...);
4220
430
            },
4221
430
            value);
4222
444
    }
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
4223
4224
private:
4225
    template <typename Range>
4226
    using read_source_callback_type =
4227
        scan_expected<ranges::const_iterator_t<Range>>(float_reader<CharT>&,
4228
                                                       Range,
4229
                                                       detail::locale_ref);
4230
4231
    template <typename Range, typename T>
4232
    scan_expected<ranges::const_iterator_t<Range>> read_impl(
4233
        Range range,
4234
        float_reader<CharT>& rd,
4235
        function_ref<read_source_callback_type<Range>> read_source_cb,
4236
        T& value,
4237
        detail::locale_ref loc = {})
4238
2.38k
    {
4239
2.38k
        if (auto r = std::invoke(read_source_cb, rd, range, loc);
4240
2.38k
            SCN_UNLIKELY(!r)) {
4241
562
            return unexpected(r.error());
4242
562
        }
4243
4244
1.81k
        SCN_TRY(n, rd.parse_value(value));
4245
108
        return ranges::next(range.begin(), n);
4246
1.81k
    }
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNS1_12float_readerIcEENS1_12function_refIFSP_SS_SK_NSA_10locale_refEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEERT0_SU_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS1_12float_readerIcEENS1_12function_refIFSN_SQ_SI_NS9_10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNS1_12float_readerIcEENS1_12function_refIFSM_SP_SH_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS1_12float_readerIcEENS1_12function_refIFSK_SN_SF_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigISR_E8functionEEERT0_SQ_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNS1_12float_readerIcEENS1_12function_refIFSP_SS_SK_NSA_10locale_refEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEERT0_SU_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS1_12float_readerIcEENS1_12function_refIFSN_SQ_SI_NS9_10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
_ZN3scn2v44impl21reader_impl_for_floatIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNS1_12float_readerIcEENS1_12function_refIFSM_SP_SH_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Line
Count
Source
4238
358
    {
4239
358
        if (auto r = std::invoke(read_source_cb, rd, range, loc);
4240
358
            SCN_UNLIKELY(!r)) {
4241
358
            return unexpected(r.error());
4242
358
        }
4243
4244
0
        SCN_TRY(n, rd.parse_value(value));
4245
0
        return ranges::next(range.begin(), n);
4246
0
    }
_ZN3scn2v44impl21reader_impl_for_floatIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS1_12float_readerIcEENS1_12function_refIFSK_SN_SF_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigISR_E8functionEEERT0_SQ_
Line
Count
Source
4238
908
    {
4239
908
        if (auto r = std::invoke(read_source_cb, rd, range, loc);
4240
908
            SCN_UNLIKELY(!r)) {
4241
22
            return unexpected(r.error());
4242
22
        }
4243
4244
886
        SCN_TRY(n, rd.parse_value(value));
4245
0
        return ranges::next(range.begin(), n);
4246
886
    }
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNS1_12float_readerIcEENS1_12function_refIFSP_SS_SK_NSA_10locale_refEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEERT0_SU_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS1_12float_readerIcEENS1_12function_refIFSN_SQ_SI_NS9_10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNS1_12float_readerIcEENS1_12function_refIFSM_SP_SH_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS1_12float_readerIcEENS1_12function_refIFSK_SN_SF_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigISR_E8functionEEERT0_SQ_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNS1_12float_readerIwEENS1_12function_refIFSP_SS_SK_NSA_10locale_refEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEERT0_SU_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS1_12float_readerIwEENS1_12function_refIFSN_SQ_SI_NS9_10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNS1_12float_readerIwEENS1_12function_refIFSM_SP_SH_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS1_12float_readerIwEENS1_12function_refIFSK_SN_SF_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigISR_E8functionEEERT0_SQ_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNS1_12float_readerIwEENS1_12function_refIFSP_SS_SK_NSA_10locale_refEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEERT0_SU_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS1_12float_readerIwEENS1_12function_refIFSN_SQ_SI_NS9_10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
_ZN3scn2v44impl21reader_impl_for_floatIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNS1_12float_readerIwEENS1_12function_refIFSM_SP_SH_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Line
Count
Source
4238
194
    {
4239
194
        if (auto r = std::invoke(read_source_cb, rd, range, loc);
4240
194
            SCN_UNLIKELY(!r)) {
4241
164
            return unexpected(r.error());
4242
164
        }
4243
4244
30
        SCN_TRY(n, rd.parse_value(value));
4245
30
        return ranges::next(range.begin(), n);
4246
30
    }
_ZN3scn2v44impl21reader_impl_for_floatIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS1_12float_readerIwEENS1_12function_refIFSK_SN_SF_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigISR_E8functionEEERT0_SQ_
Line
Count
Source
4238
920
    {
4239
920
        if (auto r = std::invoke(read_source_cb, rd, range, loc);
4240
920
            SCN_UNLIKELY(!r)) {
4241
18
            return unexpected(r.error());
4242
18
        }
4243
4244
902
        SCN_TRY(n, rd.parse_value(value));
4245
78
        return ranges::next(range.begin(), n);
4246
902
    }
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNS1_12float_readerIwEENS1_12function_refIFSP_SS_SK_NSA_10locale_refEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEERT0_SU_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS1_12float_readerIwEENS1_12function_refIFSN_SQ_SI_NS9_10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNS1_12float_readerIwEENS1_12function_refIFSM_SP_SH_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_floatIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS1_12float_readerIwEENS1_12function_refIFSK_SN_SF_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigISR_E8functionEEERT0_SQ_
4247
4248
    static unsigned get_options(const detail::format_specs& specs)
4249
1.28k
    {
4250
1.28k
        unsigned options{};
4251
1.28k
        if (specs.localized) {
4252
46
            options |= float_reader_base::allow_thsep;
4253
46
        }
4254
4255
1.28k
        SCN_GCC_COMPAT_PUSH
4256
1.28k
        SCN_GCC_COMPAT_IGNORE("-Wswitch-enum")
4257
4258
1.28k
        switch (specs.type) {
4259
48
            case detail::presentation_type::float_fixed:
4260
48
                return options | float_reader_base::allow_fixed;
4261
4262
22
            case detail::presentation_type::float_scientific:
4263
22
                return options | float_reader_base::allow_scientific;
4264
4265
106
            case detail::presentation_type::float_hex:
4266
106
                return options | float_reader_base::allow_hex;
4267
4268
16
            case detail::presentation_type::float_general:
4269
16
                return options | float_reader_base::allow_scientific |
4270
16
                       float_reader_base::allow_fixed;
4271
4272
1.08k
            case detail::presentation_type::none:
4273
1.08k
                return options | float_reader_base::allow_scientific |
4274
1.08k
                       float_reader_base::allow_fixed |
4275
1.08k
                       float_reader_base::allow_hex;
4276
4277
0
            default:
4278
0
                SCN_EXPECT(false);
4279
1.28k
                SCN_UNREACHABLE;
4280
1.28k
        }
4281
4282
        SCN_GCC_COMPAT_POP  // -Wswitch-enum
4283
1.28k
    }
scn::v4::impl::reader_impl_for_float<char>::get_options(scn::v4::detail::format_specs const&)
Line
Count
Source
4249
642
    {
4250
642
        unsigned options{};
4251
642
        if (specs.localized) {
4252
18
            options |= float_reader_base::allow_thsep;
4253
18
        }
4254
4255
642
        SCN_GCC_COMPAT_PUSH
4256
642
        SCN_GCC_COMPAT_IGNORE("-Wswitch-enum")
4257
4258
642
        switch (specs.type) {
4259
28
            case detail::presentation_type::float_fixed:
4260
28
                return options | float_reader_base::allow_fixed;
4261
4262
12
            case detail::presentation_type::float_scientific:
4263
12
                return options | float_reader_base::allow_scientific;
4264
4265
16
            case detail::presentation_type::float_hex:
4266
16
                return options | float_reader_base::allow_hex;
4267
4268
12
            case detail::presentation_type::float_general:
4269
12
                return options | float_reader_base::allow_scientific |
4270
12
                       float_reader_base::allow_fixed;
4271
4272
574
            case detail::presentation_type::none:
4273
574
                return options | float_reader_base::allow_scientific |
4274
574
                       float_reader_base::allow_fixed |
4275
574
                       float_reader_base::allow_hex;
4276
4277
0
            default:
4278
0
                SCN_EXPECT(false);
4279
642
                SCN_UNREACHABLE;
4280
642
        }
4281
4282
        SCN_GCC_COMPAT_POP  // -Wswitch-enum
4283
642
    }
scn::v4::impl::reader_impl_for_float<wchar_t>::get_options(scn::v4::detail::format_specs const&)
Line
Count
Source
4249
638
    {
4250
638
        unsigned options{};
4251
638
        if (specs.localized) {
4252
28
            options |= float_reader_base::allow_thsep;
4253
28
        }
4254
4255
638
        SCN_GCC_COMPAT_PUSH
4256
638
        SCN_GCC_COMPAT_IGNORE("-Wswitch-enum")
4257
4258
638
        switch (specs.type) {
4259
20
            case detail::presentation_type::float_fixed:
4260
20
                return options | float_reader_base::allow_fixed;
4261
4262
10
            case detail::presentation_type::float_scientific:
4263
10
                return options | float_reader_base::allow_scientific;
4264
4265
90
            case detail::presentation_type::float_hex:
4266
90
                return options | float_reader_base::allow_hex;
4267
4268
4
            case detail::presentation_type::float_general:
4269
4
                return options | float_reader_base::allow_scientific |
4270
4
                       float_reader_base::allow_fixed;
4271
4272
514
            case detail::presentation_type::none:
4273
514
                return options | float_reader_base::allow_scientific |
4274
514
                       float_reader_base::allow_fixed |
4275
514
                       float_reader_base::allow_hex;
4276
4277
0
            default:
4278
0
                SCN_EXPECT(false);
4279
638
                SCN_UNREACHABLE;
4280
638
        }
4281
4282
        SCN_GCC_COMPAT_POP  // -Wswitch-enum
4283
638
    }
4284
};
4285
4286
/////////////////////////////////////////////////////////////////
4287
// Regex reader
4288
/////////////////////////////////////////////////////////////////
4289
4290
// Forward declaration for C++17 compatibility with regex disabled
4291
template <typename CharT, typename Input>
4292
auto read_regex_matches_impl(std::basic_string_view<CharT> pattern,
4293
                             detail::regex_flags flags,
4294
                             Input input,
4295
                             basic_regex_matches<CharT>& value)
4296
    -> scan_expected<ranges::iterator_t<Input>>;
4297
4298
#if !SCN_DISABLE_REGEX
4299
4300
#if SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_STD
4301
constexpr auto make_regex_flags(detail::regex_flags flags)
4302
    -> scan_expected<std::regex_constants::syntax_option_type>
4303
{
4304
    std::regex_constants::syntax_option_type result{};
4305
    if ((flags & detail::regex_flags::multiline) != detail::regex_flags::none) {
4306
#if SCN_HAS_STD_REGEX_MULTILINE
4307
        result |= std::regex_constants::multiline;
4308
#else
4309
        return detail::unexpected_scan_error(
4310
            scan_error::invalid_format_string,
4311
            "/m flag for regex isn't supported by regex backend");
4312
#endif
4313
    }
4314
    if ((flags & detail::regex_flags::singleline) !=
4315
        detail::regex_flags::none) {
4316
        return detail::unexpected_scan_error(
4317
            scan_error::invalid_format_string,
4318
            "/s flag for regex isn't supported by regex backend");
4319
    }
4320
    if ((flags & detail::regex_flags::nocase) != detail::regex_flags::none) {
4321
        result |= std::regex_constants::icase;
4322
    }
4323
    if ((flags & detail::regex_flags::nocapture) != detail::regex_flags::none) {
4324
        result |= std::regex_constants::nosubs;
4325
    }
4326
    return result;
4327
}
4328
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_BOOST
4329
constexpr auto make_regex_flags(detail::regex_flags flags)
4330
    -> boost::regex_constants::syntax_option_type
4331
{
4332
    boost::regex_constants::syntax_option_type result{};
4333
    if ((flags & detail::regex_flags::multiline) == detail::regex_flags::none) {
4334
        result |= boost::regex_constants::no_mod_m;
4335
    }
4336
    if ((flags & detail::regex_flags::singleline) !=
4337
        detail::regex_flags::none) {
4338
        result |= boost::regex_constants::mod_s;
4339
    }
4340
    if ((flags & detail::regex_flags::nocase) != detail::regex_flags::none) {
4341
        result |= boost::regex_constants::icase;
4342
    }
4343
    if ((flags & detail::regex_flags::nocapture) != detail::regex_flags::none) {
4344
        result |= boost::regex_constants::nosubs;
4345
    }
4346
    return result;
4347
}
4348
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_RE2
4349
inline auto make_regex_flags(detail::regex_flags flags)
4350
    -> std::pair<RE2::Options, std::string_view>
4351
396
{
4352
396
    RE2::Options opt{RE2::Quiet};
4353
396
    std::string_view stringflags{};
4354
4355
396
    if ((flags & detail::regex_flags::multiline) == detail::regex_flags::none) {
4356
384
        stringflags = "(?m)";
4357
384
    }
4358
396
    if ((flags & detail::regex_flags::singleline) !=
4359
396
        detail::regex_flags::none) {
4360
6
        opt.set_dot_nl(true);
4361
6
    }
4362
396
    if ((flags & detail::regex_flags::nocase) != detail::regex_flags::none) {
4363
6
        opt.set_case_sensitive(false);
4364
6
    }
4365
396
    if ((flags & detail::regex_flags::nocapture) != detail::regex_flags::none) {
4366
6
        opt.set_never_capture(true);
4367
6
    }
4368
4369
396
    return {opt, stringflags};
4370
396
}
4371
#endif  // SCN_REGEX_BACKEND == ...
4372
4373
template <typename CharT, typename Input>
4374
auto read_regex_string_impl(std::basic_string_view<CharT> pattern,
4375
                            detail::regex_flags flags,
4376
                            Input input)
4377
    -> scan_expected<ranges::iterator_t<Input>>
4378
396
{
4379
396
    static_assert(ranges::contiguous_range<Input> &&
4380
396
                  ranges::borrowed_range<Input> &&
4381
396
                  std::is_same_v<ranges::range_value_t<Input>, CharT>);
4382
4383
#if SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_STD
4384
    std::basic_regex<CharT> re{};
4385
    try {
4386
        SCN_TRY(re_flags, make_regex_flags(flags));
4387
        re = std::basic_regex<CharT>{pattern.data(), pattern.size(),
4388
                                     re_flags | std::regex_constants::nosubs};
4389
    }
4390
    catch (const std::regex_error& err) {
4391
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4392
                                             "Invalid regex");
4393
    }
4394
4395
    std::match_results<const CharT*> matches{};
4396
    try {
4397
        bool found = std::regex_search(input.data(),
4398
                                       input.data() + input.size(), matches, re,
4399
                                       std::regex_constants::match_continuous);
4400
        if (!found || matches.prefix().matched) {
4401
            return detail::unexpected_scan_error(
4402
                scan_error::invalid_scanned_value,
4403
                "Regular expression didn't match");
4404
        }
4405
    }
4406
    catch (const std::regex_error& err) {
4407
        return detail::unexpected_scan_error(
4408
            scan_error::invalid_format_string,
4409
            "Regex matching failed with an error");
4410
    }
4411
4412
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4413
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_BOOST
4414
    auto re =
4415
#if SCN_REGEX_BOOST_USE_ICU
4416
        boost::make_u32regex(pattern.data(), pattern.data() + pattern.size(),
4417
                             make_regex_flags(flags) |
4418
                                 boost::regex_constants::no_except |
4419
                                 boost::regex_constants::nosubs);
4420
#else
4421
        boost::basic_regex<CharT>{pattern.data(), pattern.size(),
4422
                                  make_regex_flags(flags) |
4423
                                      boost::regex_constants::no_except |
4424
                                      boost::regex_constants::nosubs};
4425
#endif
4426
    if (re.status() != 0) {
4427
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4428
                                             "Invalid regex");
4429
    }
4430
4431
    boost::match_results<const CharT*> matches{};
4432
    try {
4433
        bool found =
4434
#if SCN_REGEX_BOOST_USE_ICU
4435
            boost::u32regex_search(input.data(), input.data() + input.size(),
4436
                                   matches, re,
4437
                                   boost::regex_constants::match_continuous);
4438
#else
4439
            boost::regex_search(input.data(), input.data() + input.size(),
4440
                                matches, re,
4441
                                boost::regex_constants::match_continuous);
4442
#endif
4443
        if (!found || matches.prefix().matched) {
4444
            return detail::unexpected_scan_error(
4445
                scan_error::invalid_scanned_value,
4446
                "Regular expression didn't match");
4447
        }
4448
    }
4449
    catch (const std::runtime_error& err) {
4450
        return detail::unexpected_scan_error(
4451
            scan_error::invalid_format_string,
4452
            "Regex matching failed with an error");
4453
    }
4454
4455
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4456
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_RE2
4457
    static_assert(std::is_same_v<CharT, char>);
4458
396
    std::string flagged_pattern{};
4459
396
    auto re = [&]() {
4460
396
        auto [opts, flagstr] = make_regex_flags(flags);
4461
396
        opts.set_never_capture(true);
4462
396
        if (flagstr.empty()) {
4463
12
            return re2::RE2{pattern, opts};
4464
12
        }
4465
384
        flagged_pattern.reserve(flagstr.size() + pattern.size());
4466
384
        flagged_pattern.append(flagstr);
4467
384
        flagged_pattern.append(pattern);
4468
384
        return re2::RE2{flagged_pattern, opts};
4469
396
    }();
Unexecuted instantiation: _ZZN3scn2v44impl22read_regex_string_implIcNSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEENS4_IT_NS5_ISE_EEEENS0_6detail11regex_flagsESA_ENKUlvE_clEv
_ZZN3scn2v44impl22read_regex_string_implIcNS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT0_EEEEEENSt3__117basic_string_viewIT_NSF_11char_traitsISH_EEEENS0_6detail11regex_flagsESB_ENKUlvE_clEv
Line
Count
Source
4459
396
    auto re = [&]() {
4460
396
        auto [opts, flagstr] = make_regex_flags(flags);
4461
396
        opts.set_never_capture(true);
4462
396
        if (flagstr.empty()) {
4463
12
            return re2::RE2{pattern, opts};
4464
12
        }
4465
384
        flagged_pattern.reserve(flagstr.size() + pattern.size());
4466
384
        flagged_pattern.append(flagstr);
4467
384
        flagged_pattern.append(pattern);
4468
384
        return re2::RE2{flagged_pattern, opts};
4469
396
    }();
4470
396
    if (!re.ok()) {
4471
132
        return detail::unexpected_scan_error(
4472
132
            scan_error::invalid_format_string,
4473
132
            "Failed to parse regular expression");
4474
132
    }
4475
4476
264
    auto new_input = detail::make_string_view_from_pointers(
4477
264
        detail::to_address(input.begin()), detail::to_address(input.end()));
4478
264
    bool found = re2::RE2::Consume(&new_input, re);
4479
264
    if (!found) {
4480
174
        return detail::unexpected_scan_error(scan_error::invalid_scanned_value,
4481
174
                                             "Regular expression didn't match");
4482
174
    }
4483
90
    return input.begin() + ranges::distance(input.data(), new_input.data());
4484
264
#endif  // SCN_REGEX_BACKEND == ...
4485
264
}
Unexecuted instantiation: _ZN3scn2v44impl22read_regex_string_implIcNSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEENS4_IT_NS5_ISE_EEEENS0_6detail11regex_flagsESA_
_ZN3scn2v44impl22read_regex_string_implIcNS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT0_EEEEEENSt3__117basic_string_viewIT_NSF_11char_traitsISH_EEEENS0_6detail11regex_flagsESB_
Line
Count
Source
4378
396
{
4379
396
    static_assert(ranges::contiguous_range<Input> &&
4380
396
                  ranges::borrowed_range<Input> &&
4381
396
                  std::is_same_v<ranges::range_value_t<Input>, CharT>);
4382
4383
#if SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_STD
4384
    std::basic_regex<CharT> re{};
4385
    try {
4386
        SCN_TRY(re_flags, make_regex_flags(flags));
4387
        re = std::basic_regex<CharT>{pattern.data(), pattern.size(),
4388
                                     re_flags | std::regex_constants::nosubs};
4389
    }
4390
    catch (const std::regex_error& err) {
4391
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4392
                                             "Invalid regex");
4393
    }
4394
4395
    std::match_results<const CharT*> matches{};
4396
    try {
4397
        bool found = std::regex_search(input.data(),
4398
                                       input.data() + input.size(), matches, re,
4399
                                       std::regex_constants::match_continuous);
4400
        if (!found || matches.prefix().matched) {
4401
            return detail::unexpected_scan_error(
4402
                scan_error::invalid_scanned_value,
4403
                "Regular expression didn't match");
4404
        }
4405
    }
4406
    catch (const std::regex_error& err) {
4407
        return detail::unexpected_scan_error(
4408
            scan_error::invalid_format_string,
4409
            "Regex matching failed with an error");
4410
    }
4411
4412
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4413
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_BOOST
4414
    auto re =
4415
#if SCN_REGEX_BOOST_USE_ICU
4416
        boost::make_u32regex(pattern.data(), pattern.data() + pattern.size(),
4417
                             make_regex_flags(flags) |
4418
                                 boost::regex_constants::no_except |
4419
                                 boost::regex_constants::nosubs);
4420
#else
4421
        boost::basic_regex<CharT>{pattern.data(), pattern.size(),
4422
                                  make_regex_flags(flags) |
4423
                                      boost::regex_constants::no_except |
4424
                                      boost::regex_constants::nosubs};
4425
#endif
4426
    if (re.status() != 0) {
4427
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4428
                                             "Invalid regex");
4429
    }
4430
4431
    boost::match_results<const CharT*> matches{};
4432
    try {
4433
        bool found =
4434
#if SCN_REGEX_BOOST_USE_ICU
4435
            boost::u32regex_search(input.data(), input.data() + input.size(),
4436
                                   matches, re,
4437
                                   boost::regex_constants::match_continuous);
4438
#else
4439
            boost::regex_search(input.data(), input.data() + input.size(),
4440
                                matches, re,
4441
                                boost::regex_constants::match_continuous);
4442
#endif
4443
        if (!found || matches.prefix().matched) {
4444
            return detail::unexpected_scan_error(
4445
                scan_error::invalid_scanned_value,
4446
                "Regular expression didn't match");
4447
        }
4448
    }
4449
    catch (const std::runtime_error& err) {
4450
        return detail::unexpected_scan_error(
4451
            scan_error::invalid_format_string,
4452
            "Regex matching failed with an error");
4453
    }
4454
4455
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4456
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_RE2
4457
    static_assert(std::is_same_v<CharT, char>);
4458
396
    std::string flagged_pattern{};
4459
396
    auto re = [&]() {
4460
396
        auto [opts, flagstr] = make_regex_flags(flags);
4461
396
        opts.set_never_capture(true);
4462
396
        if (flagstr.empty()) {
4463
396
            return re2::RE2{pattern, opts};
4464
396
        }
4465
396
        flagged_pattern.reserve(flagstr.size() + pattern.size());
4466
396
        flagged_pattern.append(flagstr);
4467
396
        flagged_pattern.append(pattern);
4468
396
        return re2::RE2{flagged_pattern, opts};
4469
396
    }();
4470
396
    if (!re.ok()) {
4471
132
        return detail::unexpected_scan_error(
4472
132
            scan_error::invalid_format_string,
4473
132
            "Failed to parse regular expression");
4474
132
    }
4475
4476
264
    auto new_input = detail::make_string_view_from_pointers(
4477
264
        detail::to_address(input.begin()), detail::to_address(input.end()));
4478
264
    bool found = re2::RE2::Consume(&new_input, re);
4479
264
    if (!found) {
4480
174
        return detail::unexpected_scan_error(scan_error::invalid_scanned_value,
4481
174
                                             "Regular expression didn't match");
4482
174
    }
4483
90
    return input.begin() + ranges::distance(input.data(), new_input.data());
4484
264
#endif  // SCN_REGEX_BACKEND == ...
4485
264
}
4486
4487
template <typename CharT, typename Input>
4488
auto read_regex_matches_impl(std::basic_string_view<CharT> pattern,
4489
                             detail::regex_flags flags,
4490
                             Input input,
4491
                             basic_regex_matches<CharT>& value)
4492
    -> scan_expected<ranges::iterator_t<Input>>
4493
0
{
4494
0
    static_assert(ranges::contiguous_range<Input> &&
4495
0
                  ranges::borrowed_range<Input> &&
4496
0
                  std::is_same_v<ranges::range_value_t<Input>, CharT>);
4497
4498
#if SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_STD
4499
    std::basic_regex<CharT> re{};
4500
    try {
4501
        SCN_TRY(re_flags, make_regex_flags(flags));
4502
        re = std::basic_regex<CharT>{pattern.data(), pattern.size(), re_flags};
4503
    }
4504
    catch (const std::regex_error& err) {
4505
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4506
                                             "Invalid regex");
4507
    }
4508
4509
    std::match_results<const CharT*> matches{};
4510
    try {
4511
        bool found = std::regex_search(input.data(),
4512
                                       input.data() + input.size(), matches, re,
4513
                                       std::regex_constants::match_continuous);
4514
        if (!found || matches.prefix().matched) {
4515
            return detail::unexpected_scan_error(
4516
                scan_error::invalid_scanned_value,
4517
                "Regular expression didn't match");
4518
        }
4519
    }
4520
    catch (const std::regex_error& err) {
4521
        return detail::unexpected_scan_error(
4522
            scan_error::invalid_format_string,
4523
            "Regex matching failed with an error");
4524
    }
4525
4526
    value.resize(matches.size());
4527
    std::transform(matches.begin(), matches.end(), value.begin(),
4528
                   [](auto&& match) -> std::optional<basic_regex_match<CharT>> {
4529
                       if (!match.matched)
4530
                           return std::nullopt;
4531
                       return detail::make_string_view_from_pointers(
4532
                           match.first, match.second);
4533
                   });
4534
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4535
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_BOOST
4536
    std::vector<std::basic_string<CharT>> names;
4537
    for (size_t i = 0; i < pattern.size();) {
4538
        if constexpr (std::is_same_v<CharT, char>) {
4539
            i = pattern.find("(?<", i);
4540
        }
4541
        else {
4542
            i = pattern.find(L"(?<", i);
4543
        }
4544
4545
        if (i == std::basic_string_view<CharT>::npos) {
4546
            break;
4547
        }
4548
        if (i > 0 && pattern[i - 1] == CharT{'\\'}) {
4549
            if (i == 1 || pattern[i - 2] != CharT{'\\'}) {
4550
                i += 3;
4551
                continue;
4552
            }
4553
        }
4554
4555
        i += 3;
4556
        auto end_i = pattern.find(CharT{'>'}, i);
4557
        if (end_i == std::basic_string_view<CharT>::npos) {
4558
            break;
4559
        }
4560
        names.emplace_back(pattern.substr(i, end_i - i));
4561
    }
4562
4563
    auto re =
4564
#if SCN_REGEX_BOOST_USE_ICU
4565
        boost::make_u32regex(
4566
            pattern.data(), pattern.data() + pattern.size(),
4567
            make_regex_flags(flags) | boost::regex_constants::no_except);
4568
#else
4569
        boost::basic_regex<CharT>{
4570
            pattern.data(), pattern.size(),
4571
            make_regex_flags(flags) | boost::regex_constants::no_except};
4572
#endif
4573
    if (re.status() != 0) {
4574
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4575
                                             "Invalid regex");
4576
    }
4577
4578
    boost::match_results<const CharT*> matches{};
4579
    try {
4580
        bool found =
4581
#if SCN_REGEX_BOOST_USE_ICU
4582
            boost::u32regex_search(input.data(), input.data() + input.size(),
4583
                                   matches, re,
4584
                                   boost::regex_constants::match_continuous);
4585
#else
4586
            boost::regex_search(input.data(), input.data() + input.size(),
4587
                                matches, re,
4588
                                boost::regex_constants::match_continuous);
4589
#endif
4590
        if (!found || matches.prefix().matched) {
4591
            return detail::unexpected_scan_error(
4592
                scan_error::invalid_scanned_value,
4593
                "Regular expression didn't match");
4594
        }
4595
    }
4596
    catch (const std::runtime_error& err) {
4597
        return detail::unexpected_scan_error(
4598
            scan_error::invalid_format_string,
4599
            "Regex matching failed with an error");
4600
    }
4601
4602
    value.resize(matches.size());
4603
    std::transform(
4604
        matches.begin(), matches.end(), value.begin(),
4605
        [&](auto&& match) -> std::optional<basic_regex_match<CharT>> {
4606
            if (!match.matched)
4607
                return std::nullopt;
4608
            auto sv = detail::make_string_view_from_pointers(match.first,
4609
                                                             match.second);
4610
4611
            if (auto name_it = std::find_if(
4612
                    names.begin(), names.end(),
4613
                    [&](const auto& name) { return match == matches[name]; });
4614
                name_it != names.end()) {
4615
                return basic_regex_match<CharT>{sv, *name_it};
4616
            }
4617
            return sv;
4618
        });
4619
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4620
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_RE2
4621
    static_assert(std::is_same_v<CharT, char>);
4622
0
    std::string flagged_pattern{};
4623
0
    auto re = [&]() {
4624
0
        auto [opts, flagstr] = make_regex_flags(flags);
4625
0
        if (flagstr.empty()) {
4626
0
            return re2::RE2{pattern, opts};
4627
0
        }
4628
0
        flagged_pattern.reserve(flagstr.size() + pattern.size());
4629
0
        flagged_pattern.append(flagstr);
4630
0
        flagged_pattern.append(pattern);
4631
0
        return re2::RE2{flagged_pattern, opts};
4632
0
    }();
Unexecuted instantiation: _ZZN3scn2v44impl23read_regex_matches_implIcNSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEENS4_IT_NS5_ISE_EEEENS0_6detail11regex_flagsESA_RNS0_19basic_regex_matchesISE_EEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl23read_regex_matches_implIcNS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT0_EEEEEENSt3__117basic_string_viewIT_NSF_11char_traitsISH_EEEENS0_6detail11regex_flagsESB_RNS0_19basic_regex_matchesISH_EEENKUlvE_clEv
4633
0
    if (!re.ok()) {
4634
0
        return detail::unexpected_scan_error(
4635
0
            scan_error::invalid_format_string,
4636
0
            "Failed to parse regular expression");
4637
0
    }
4638
    // TODO: Optimize into a single batch allocation
4639
0
    const auto max_matches_n =
4640
0
        static_cast<size_t>(re.NumberOfCapturingGroups());
4641
0
    std::vector<std::optional<std::string_view>> matches(max_matches_n);
4642
0
    std::vector<re2::RE2::Arg> match_args(max_matches_n);
4643
0
    std::vector<re2::RE2::Arg*> match_argptrs(max_matches_n);
4644
0
    std::transform(matches.begin(), matches.end(), match_args.begin(),
4645
0
                   [](auto& val) { return re2::RE2::Arg{&val}; });
Unexecuted instantiation: _ZZN3scn2v44impl23read_regex_matches_implIcNSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEENS4_IT_NS5_ISE_EEEENS0_6detail11regex_flagsESA_RNS0_19basic_regex_matchesISE_EEENKUlRSE_E_clINS3_8optionalIS7_EEEEDaSM_
Unexecuted instantiation: _ZZN3scn2v44impl23read_regex_matches_implIcNS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT0_EEEEEENSt3__117basic_string_viewIT_NSF_11char_traitsISH_EEEENS0_6detail11regex_flagsESB_RNS0_19basic_regex_matchesISH_EEENKUlRSH_E_clINSF_8optionalINSG_IcNSI_IcEEEEEEEEDaSQ_
4646
0
    std::transform(match_args.begin(), match_args.end(), match_argptrs.begin(),
4647
0
                   [](auto& arg) { return &arg; });
Unexecuted instantiation: _ZZN3scn2v44impl23read_regex_matches_implIcNSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEENS4_IT_NS5_ISE_EEEENS0_6detail11regex_flagsESA_RNS0_19basic_regex_matchesISE_EEENKUlRSE_E0_clIN3re23RE23ArgEEEDaSM_
Unexecuted instantiation: _ZZN3scn2v44impl23read_regex_matches_implIcNS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT0_EEEEEENSt3__117basic_string_viewIT_NSF_11char_traitsISH_EEEENS0_6detail11regex_flagsESB_RNS0_19basic_regex_matchesISH_EEENKUlRSH_E0_clIN3re23RE23ArgEEEDaSQ_
4648
0
    auto new_input = detail::make_string_view_from_pointers(
4649
0
        detail::to_address(input.begin()), detail::to_address(input.end()));
4650
0
    bool found = re2::RE2::ConsumeN(&new_input, re, match_argptrs.data(),
4651
0
                                    match_argptrs.size());
4652
0
    if (!found) {
4653
0
        return detail::unexpected_scan_error(scan_error::invalid_scanned_value,
4654
0
                                             "Regular expression didn't match");
4655
0
    }
4656
0
    value.resize(matches.size() + 1);
4657
0
    value[0] =
4658
0
        detail::make_string_view_from_pointers(input.data(), new_input.data());
4659
0
    std::transform(matches.begin(), matches.end(), value.begin() + 1,
4660
0
                   [&](auto&& match) -> std::optional<regex_match> {
4661
0
                       if (!match)
4662
0
                           return std::nullopt;
4663
0
                       return *match;
4664
0
                   });
Unexecuted instantiation: _ZZN3scn2v44impl23read_regex_matches_implIcNSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEENS4_IT_NS5_ISE_EEEENS0_6detail11regex_flagsESA_RNS0_19basic_regex_matchesISE_EEENKUlOSE_E_clIRNS3_8optionalIS7_EEEENSP_INS0_17basic_regex_matchIcEEEESM_
Unexecuted instantiation: _ZZN3scn2v44impl23read_regex_matches_implIcNS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT0_EEEEEENSt3__117basic_string_viewIT_NSF_11char_traitsISH_EEEENS0_6detail11regex_flagsESB_RNS0_19basic_regex_matchesISH_EEENKUlOSH_E_clIRNSF_8optionalINSG_IcNSI_IcEEEEEEEENST_INS0_17basic_regex_matchIcEEEESQ_
4665
0
    {
4666
0
        const auto& capturing_groups = re.CapturingGroupNames();
4667
0
        for (size_t i = 1; i < value.size(); ++i) {
4668
0
            if (auto it = capturing_groups.find(static_cast<int>(i));
4669
0
                it != capturing_groups.end()) {
4670
0
                auto val = value[i]->get();
4671
0
                value[i].emplace(val, it->second);
4672
0
            };
4673
0
        }
4674
0
    }
4675
0
    return input.begin() + ranges::distance(input.data(), new_input.data());
4676
0
#endif  // SCN_REGEX_BACKEND == ...
4677
0
}
Unexecuted instantiation: _ZN3scn2v44impl23read_regex_matches_implIcNSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEENS4_IT_NS5_ISE_EEEENS0_6detail11regex_flagsESA_RNS0_19basic_regex_matchesISE_EE
Unexecuted instantiation: _ZN3scn2v44impl23read_regex_matches_implIcNS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT0_EEEEEENSt3__117basic_string_viewIT_NSF_11char_traitsISH_EEEENS0_6detail11regex_flagsESB_RNS0_19basic_regex_matchesISH_EE
4678
4679
inline std::string get_unescaped_regex_pattern(std::string_view pattern)
4680
504
{
4681
504
    std::string result{pattern};
4682
5.29k
    for (size_t n = 0; (n = result.find("\\/", n)) != std::string::npos;) {
4683
4.78k
        result.replace(n, 2, "/");
4684
4.78k
        ++n;
4685
4.78k
    }
4686
504
    return result;
4687
504
}
4688
inline std::wstring get_unescaped_regex_pattern(std::wstring_view pattern)
4689
0
{
4690
0
    std::wstring result{pattern};
4691
0
    for (size_t n = 0; (n = result.find(L"\\/", n)) != std::wstring::npos;) {
4692
0
        result.replace(n, 2, L"/");
4693
0
        ++n;
4694
0
    }
4695
0
    return result;
4696
0
}
4697
4698
#endif  // !SCN_DISABLE_REGEX
4699
4700
template <typename SourceCharT>
4701
struct regex_matches_reader
4702
    : public reader_base<regex_matches_reader<SourceCharT>, SourceCharT> {
4703
    void check_specs_impl(const detail::format_specs& specs,
4704
                          reader_error_handler& eh)
4705
0
    {
4706
0
        detail::check_regex_type_specs(specs, eh);
4707
0
        SCN_EXPECT(specs.charset_string_data != nullptr);
4708
0
        SCN_EXPECT(specs.charset_string_size > 0);
4709
0
    }
Unexecuted instantiation: scn::v4::impl::regex_matches_reader<char>::check_specs_impl(scn::v4::detail::format_specs const&, scn::v4::impl::reader_error_handler&)
Unexecuted instantiation: scn::v4::impl::regex_matches_reader<wchar_t>::check_specs_impl(scn::v4::detail::format_specs const&, scn::v4::impl::reader_error_handler&)
4710
4711
    template <typename Range, typename DestCharT>
4712
    auto read_default(Range,
4713
                      basic_regex_matches<DestCharT>&,
4714
                      detail::locale_ref = {})
4715
        -> scan_expected<ranges::const_iterator_t<Range>>
4716
0
    {
4717
0
        return detail::unexpected_scan_error(
4718
0
            scan_error::invalid_format_string,
4719
0
            "No regex given in format string for scanning regex_matches");
4720
0
    }
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS0_19basic_regex_matchesIT0_EENS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS0_19basic_regex_matchesIT0_EENS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS0_19basic_regex_matchesIT0_EENS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS0_19basic_regex_matchesIT0_EENS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
4721
4722
    template <typename Range, typename DestCharT>
4723
    auto read_specs(Range range,
4724
                    const detail::format_specs& specs,
4725
                    basic_regex_matches<DestCharT>& value,
4726
                    detail::locale_ref = {})
4727
        -> scan_expected<ranges::const_iterator_t<Range>>
4728
0
    {
4729
0
        if constexpr (!std::is_same_v<SourceCharT, DestCharT>) {
4730
0
            return detail::unexpected_scan_error(
4731
0
                scan_error::invalid_format_string,
4732
0
                "Cannot transcode is regex_matches_reader");
4733
        }
4734
        else if constexpr (!SCN_REGEX_SUPPORTS_WIDE_STRINGS &&
4735
0
                           !std::is_same_v<SourceCharT, char>) {
4736
0
            return detail::unexpected_scan_error(
4737
0
                scan_error::invalid_format_string,
4738
0
                "Regex backend doesn't support wide strings as input");
4739
        }
4740
0
        else {
4741
0
            if (!is_entire_source_contiguous(range)) {
4742
0
                return detail::unexpected_scan_error(
4743
0
                    scan_error::invalid_format_string,
4744
0
                    "Cannot use regex with a non-contiguous source "
4745
0
                    "range");
4746
0
            }
4747
4748
0
            auto input = get_as_contiguous(range);
4749
0
            SCN_TRY(it,
4750
0
                    impl(input,
4751
0
                         specs.type == detail::presentation_type::regex_escaped,
4752
0
                         specs.charset_string<SourceCharT>(),
4753
0
                         specs.regexp_flags, value));
4754
0
            return ranges::next(range.begin(),
4755
0
                                ranges::distance(input.begin(), it));
4756
0
        }
4757
0
    }
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNS0_19basic_regex_matchesIT0_EENSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNS0_19basic_regex_matchesIT0_EENSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNS0_19basic_regex_matchesIT0_EENSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNS0_19basic_regex_matchesIT0_EENSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20regex_matches_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSL_10locale_refE
4758
4759
private:
4760
    template <typename Range, typename DestCharT>
4761
    auto impl(Range input,
4762
              bool is_escaped,
4763
              std::basic_string_view<SourceCharT> pattern,
4764
              detail::regex_flags flags,
4765
              basic_regex_matches<DestCharT>& value)
4766
0
    {
4767
        if constexpr (detail::is_type_disabled<
4768
                          basic_regex_matches<DestCharT>>) {
4769
            SCN_EXPECT(false);
4770
            SCN_UNREACHABLE;
4771
        }
4772
0
        else {
4773
0
            if (is_escaped) {
4774
0
                return read_regex_matches_impl<SourceCharT>(
4775
0
                    get_unescaped_regex_pattern(pattern), flags, input, value);
4776
0
            }
4777
0
            return read_regex_matches_impl(pattern, flags, input, value);
4778
0
        }
4779
0
    }
Unexecuted instantiation: auto scn::v4::impl::regex_matches_reader<char>::impl<std::__1::basic_string_view<char, std::__1::char_traits<char> >, char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool, std::__1::basic_string_view<char, std::__1::char_traits<char> >, scn::v4::detail::regex_flags, scn::v4::basic_regex_matches<char>&)
Unexecuted instantiation: auto scn::v4::impl::regex_matches_reader<char>::impl<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char>(scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, bool, std::__1::basic_string_view<char, std::__1::char_traits<char> >, scn::v4::detail::regex_flags, scn::v4::basic_regex_matches<char>&)
4780
};
4781
4782
template <typename CharT>
4783
struct reader_impl_for_regex_matches : public regex_matches_reader<CharT> {};
4784
4785
/////////////////////////////////////////////////////////////////
4786
// String reader
4787
/////////////////////////////////////////////////////////////////
4788
4789
template <typename Range, typename Iterator, typename ValueCharT>
4790
auto read_string_impl(Range range,
4791
                      Iterator&& result,
4792
                      std::basic_string<ValueCharT>& value)
4793
    -> scan_expected<ranges::const_iterator_t<Range>>
4794
7.30k
{
4795
7.30k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
7.30k
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
7.30k
    if (!validate_unicode(src.view())) {
4799
1.93k
        return detail::unexpected_scan_error(
4800
1.93k
            scan_error::invalid_scanned_value,
4801
1.93k
            "Invalid encoding in scanned string");
4802
1.93k
    }
4803
4804
5.36k
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
5.36k
    return SCN_MOVE(result);
4806
5.36k
}
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_12basic_stringIT1_NSJ_11char_traitsISU_EENSJ_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_12basic_stringIT1_NSK_11char_traitsISV_EENSK_9allocatorISV_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEESA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_12basic_stringIT1_NSE_11char_traitsISP_EENSE_9allocatorISP_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEERSA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_12basic_stringIT1_NSF_11char_traitsISQ_EENSF_9allocatorISQ_EEEE
_ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_12basic_stringIT1_NSG_11char_traitsISR_EENSG_9allocatorISR_EEEE
Line
Count
Source
4794
462
{
4795
462
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
462
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
462
    if (!validate_unicode(src.view())) {
4799
176
        return detail::unexpected_scan_error(
4800
176
            scan_error::invalid_scanned_value,
4801
176
            "Invalid encoding in scanned string");
4802
176
    }
4803
4804
286
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
286
    return SCN_MOVE(result);
4806
286
}
_ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_12basic_stringIT1_NSH_11char_traitsISS_EENSH_9allocatorISS_EEEE
Line
Count
Source
4794
266
{
4795
266
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
266
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
266
    if (!validate_unicode(src.view())) {
4799
96
        return detail::unexpected_scan_error(
4800
96
            scan_error::invalid_scanned_value,
4801
96
            "Invalid encoding in scanned string");
4802
96
    }
4803
4804
170
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
170
    return SCN_MOVE(result);
4806
170
}
_ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EES8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_12basic_stringIT1_NSB_11char_traitsISM_EENSB_9allocatorISM_EEEE
Line
Count
Source
4794
1.00k
{
4795
1.00k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
1.00k
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
1.00k
    if (!validate_unicode(src.view())) {
4799
326
        return detail::unexpected_scan_error(
4800
326
            scan_error::invalid_scanned_value,
4801
326
            "Invalid encoding in scanned string");
4802
326
    }
4803
4804
680
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
680
    return SCN_MOVE(result);
4806
680
}
_ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EERS8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_12basic_stringIT1_NSC_11char_traitsISN_EENSC_9allocatorISN_EEEE
Line
Count
Source
4794
550
{
4795
550
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
550
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
550
    if (!validate_unicode(src.view())) {
4799
52
        return detail::unexpected_scan_error(
4800
52
            scan_error::invalid_scanned_value,
4801
52
            "Invalid encoding in scanned string");
4802
52
    }
4803
4804
498
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
498
    return SCN_MOVE(result);
4806
498
}
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_12basic_stringIT1_NSJ_11char_traitsISU_EENSJ_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_12basic_stringIT1_NSK_11char_traitsISV_EENSK_9allocatorISV_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEESA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_12basic_stringIT1_NSE_11char_traitsISP_EENSE_9allocatorISP_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEERSA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_12basic_stringIT1_NSF_11char_traitsISQ_EENSF_9allocatorISQ_EEEE
_ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_12basic_stringIT1_NSG_11char_traitsISR_EENSG_9allocatorISR_EEEE
Line
Count
Source
4794
462
{
4795
462
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
462
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
462
    if (!validate_unicode(src.view())) {
4799
176
        return detail::unexpected_scan_error(
4800
176
            scan_error::invalid_scanned_value,
4801
176
            "Invalid encoding in scanned string");
4802
176
    }
4803
4804
286
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
286
    return SCN_MOVE(result);
4806
286
}
_ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_12basic_stringIT1_NSH_11char_traitsISS_EENSH_9allocatorISS_EEEE
Line
Count
Source
4794
266
{
4795
266
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
266
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
266
    if (!validate_unicode(src.view())) {
4799
96
        return detail::unexpected_scan_error(
4800
96
            scan_error::invalid_scanned_value,
4801
96
            "Invalid encoding in scanned string");
4802
96
    }
4803
4804
170
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
170
    return SCN_MOVE(result);
4806
170
}
_ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EES8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_12basic_stringIT1_NSB_11char_traitsISM_EENSB_9allocatorISM_EEEE
Line
Count
Source
4794
1.00k
{
4795
1.00k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
1.00k
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
1.00k
    if (!validate_unicode(src.view())) {
4799
326
        return detail::unexpected_scan_error(
4800
326
            scan_error::invalid_scanned_value,
4801
326
            "Invalid encoding in scanned string");
4802
326
    }
4803
4804
680
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
680
    return SCN_MOVE(result);
4806
680
}
_ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EERS8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_12basic_stringIT1_NSC_11char_traitsISN_EENSC_9allocatorISN_EEEE
Line
Count
Source
4794
550
{
4795
550
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
550
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
550
    if (!validate_unicode(src.view())) {
4799
52
        return detail::unexpected_scan_error(
4800
52
            scan_error::invalid_scanned_value,
4801
52
            "Invalid encoding in scanned string");
4802
52
    }
4803
4804
498
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
498
    return SCN_MOVE(result);
4806
498
}
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_12basic_stringIT1_NSJ_11char_traitsISU_EENSJ_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_12basic_stringIT1_NSK_11char_traitsISV_EENSK_9allocatorISV_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEESA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_12basic_stringIT1_NSE_11char_traitsISP_EENSE_9allocatorISP_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEERSA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_12basic_stringIT1_NSF_11char_traitsISQ_EENSF_9allocatorISQ_EEEE
_ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_12basic_stringIT1_NSG_11char_traitsISR_EENSG_9allocatorISR_EEEE
Line
Count
Source
4794
200
{
4795
200
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
200
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
200
    if (!validate_unicode(src.view())) {
4799
72
        return detail::unexpected_scan_error(
4800
72
            scan_error::invalid_scanned_value,
4801
72
            "Invalid encoding in scanned string");
4802
72
    }
4803
4804
128
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
128
    return SCN_MOVE(result);
4806
128
}
_ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_12basic_stringIT1_NSH_11char_traitsISS_EENSH_9allocatorISS_EEEE
Line
Count
Source
4794
136
{
4795
136
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
136
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
136
    if (!validate_unicode(src.view())) {
4799
0
        return detail::unexpected_scan_error(
4800
0
            scan_error::invalid_scanned_value,
4801
0
            "Invalid encoding in scanned string");
4802
0
    }
4803
4804
136
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
136
    return SCN_MOVE(result);
4806
136
}
_ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EES8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_12basic_stringIT1_NSB_11char_traitsISM_EENSB_9allocatorISM_EEEE
Line
Count
Source
4794
868
{
4795
868
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
868
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
868
    if (!validate_unicode(src.view())) {
4799
238
        return detail::unexpected_scan_error(
4800
238
            scan_error::invalid_scanned_value,
4801
238
            "Invalid encoding in scanned string");
4802
238
    }
4803
4804
630
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
630
    return SCN_MOVE(result);
4806
630
}
_ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EERS8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_12basic_stringIT1_NSC_11char_traitsISN_EENSC_9allocatorISN_EEEE
Line
Count
Source
4794
162
{
4795
162
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
162
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
162
    if (!validate_unicode(src.view())) {
4799
6
        return detail::unexpected_scan_error(
4800
6
            scan_error::invalid_scanned_value,
4801
6
            "Invalid encoding in scanned string");
4802
6
    }
4803
4804
156
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
156
    return SCN_MOVE(result);
4806
156
}
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_12basic_stringIT1_NSJ_11char_traitsISU_EENSJ_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_12basic_stringIT1_NSK_11char_traitsISV_EENSK_9allocatorISV_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEESA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_12basic_stringIT1_NSE_11char_traitsISP_EENSE_9allocatorISP_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEERSA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_12basic_stringIT1_NSF_11char_traitsISQ_EENSF_9allocatorISQ_EEEE
_ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_12basic_stringIT1_NSG_11char_traitsISR_EENSG_9allocatorISR_EEEE
Line
Count
Source
4794
200
{
4795
200
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
200
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
200
    if (!validate_unicode(src.view())) {
4799
72
        return detail::unexpected_scan_error(
4800
72
            scan_error::invalid_scanned_value,
4801
72
            "Invalid encoding in scanned string");
4802
72
    }
4803
4804
128
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
128
    return SCN_MOVE(result);
4806
128
}
_ZN3scn2v44impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_12basic_stringIT1_NSH_11char_traitsISS_EENSH_9allocatorISS_EEEE
Line
Count
Source
4794
136
{
4795
136
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
136
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
136
    if (!validate_unicode(src.view())) {
4799
0
        return detail::unexpected_scan_error(
4800
0
            scan_error::invalid_scanned_value,
4801
0
            "Invalid encoding in scanned string");
4802
0
    }
4803
4804
136
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
136
    return SCN_MOVE(result);
4806
136
}
_ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EES8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_12basic_stringIT1_NSB_11char_traitsISM_EENSB_9allocatorISM_EEEE
Line
Count
Source
4794
868
{
4795
868
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
868
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
868
    if (!validate_unicode(src.view())) {
4799
238
        return detail::unexpected_scan_error(
4800
238
            scan_error::invalid_scanned_value,
4801
238
            "Invalid encoding in scanned string");
4802
238
    }
4803
4804
630
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
630
    return SCN_MOVE(result);
4806
630
}
_ZN3scn2v44impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EERS8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_12basic_stringIT1_NSC_11char_traitsISN_EENSC_9allocatorISN_EEEE
Line
Count
Source
4794
162
{
4795
162
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4796
4797
162
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4798
162
    if (!validate_unicode(src.view())) {
4799
6
        return detail::unexpected_scan_error(
4800
6
            scan_error::invalid_scanned_value,
4801
6
            "Invalid encoding in scanned string");
4802
6
    }
4803
4804
156
    SCN_TRY_DISCARD(transcode_if_necessary(SCN_MOVE(src), value));
4805
156
    return SCN_MOVE(result);
4806
156
}
4807
4808
template <typename Range, typename Iterator, typename ValueCharT>
4809
auto read_string_view_impl(Range range,
4810
                           Iterator&& result,
4811
                           std::basic_string_view<ValueCharT>& value)
4812
    -> scan_expected<ranges::const_iterator_t<Range>>
4813
3.65k
{
4814
3.65k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4815
4816
3.65k
    auto src = [&]() {
4817
3.65k
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
1.06k
            return make_contiguous_buffer(
4819
1.06k
                ranges::subrange{range.begin().base(), result.base()});
4820
        }
4821
2.58k
        else {
4822
2.58k
            return make_contiguous_buffer(
4823
2.58k
                ranges::subrange{range.begin(), result});
4824
2.58k
        }
4825
3.65k
    }();
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEESA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEERSA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEEENKUlvE_clEv
_ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEEENKUlvE_clEv
Line
Count
Source
4816
462
    auto src = [&]() {
4817
462
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
462
            return make_contiguous_buffer(
4819
462
                ranges::subrange{range.begin().base(), result.base()});
4820
        }
4821
        else {
4822
            return make_contiguous_buffer(
4823
                ranges::subrange{range.begin(), result});
4824
        }
4825
462
    }();
_ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEEENKUlvE_clEv
Line
Count
Source
4816
266
    auto src = [&]() {
4817
266
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
266
            return make_contiguous_buffer(
4819
266
                ranges::subrange{range.begin().base(), result.base()});
4820
        }
4821
        else {
4822
            return make_contiguous_buffer(
4823
                ranges::subrange{range.begin(), result});
4824
        }
4825
266
    }();
_ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EES8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEEENKUlvE_clEv
Line
Count
Source
4816
1.00k
    auto src = [&]() {
4817
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
            return make_contiguous_buffer(
4819
                ranges::subrange{range.begin().base(), result.base()});
4820
        }
4821
1.00k
        else {
4822
1.00k
            return make_contiguous_buffer(
4823
1.00k
                ranges::subrange{range.begin(), result});
4824
1.00k
        }
4825
1.00k
    }();
_ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EERS8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEEENKUlvE_clEv
Line
Count
Source
4816
550
    auto src = [&]() {
4817
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
            return make_contiguous_buffer(
4819
                ranges::subrange{range.begin().base(), result.base()});
4820
        }
4821
550
        else {
4822
550
            return make_contiguous_buffer(
4823
550
                ranges::subrange{range.begin(), result});
4824
550
        }
4825
550
    }();
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEESA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEERSA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EES8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EERS8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEESA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEERSA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EES8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EERS8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEESA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEERSA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEEENKUlvE_clEv
_ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEEENKUlvE_clEv
Line
Count
Source
4816
200
    auto src = [&]() {
4817
200
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
200
            return make_contiguous_buffer(
4819
200
                ranges::subrange{range.begin().base(), result.base()});
4820
        }
4821
        else {
4822
            return make_contiguous_buffer(
4823
                ranges::subrange{range.begin(), result});
4824
        }
4825
200
    }();
_ZZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEEENKUlvE_clEv
Line
Count
Source
4816
136
    auto src = [&]() {
4817
136
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
136
            return make_contiguous_buffer(
4819
136
                ranges::subrange{range.begin().base(), result.base()});
4820
        }
4821
        else {
4822
            return make_contiguous_buffer(
4823
                ranges::subrange{range.begin(), result});
4824
        }
4825
136
    }();
_ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EES8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEEENKUlvE_clEv
Line
Count
Source
4816
868
    auto src = [&]() {
4817
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
            return make_contiguous_buffer(
4819
                ranges::subrange{range.begin().base(), result.base()});
4820
        }
4821
868
        else {
4822
868
            return make_contiguous_buffer(
4823
868
                ranges::subrange{range.begin(), result});
4824
868
        }
4825
868
    }();
_ZZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EERS8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEEENKUlvE_clEv
Line
Count
Source
4816
162
    auto src = [&]() {
4817
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
            return make_contiguous_buffer(
4819
                ranges::subrange{range.begin().base(), result.base()});
4820
        }
4821
162
        else {
4822
162
            return make_contiguous_buffer(
4823
162
                ranges::subrange{range.begin(), result});
4824
162
        }
4825
162
    }();
4826
3.65k
    using src_type = decltype(src);
4827
4828
3.65k
    if (src.stores_allocated_string()) {
4829
0
        return detail::unexpected_scan_error(
4830
0
            scan_error::invalid_format_string,
4831
0
            "Cannot read a string_view from this source range (not "
4832
0
            "contiguous)");
4833
0
    }
4834
3.65k
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4835
0
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4836
0
                                             "Cannot read a string_view from "
4837
0
                                             "this source range (would require "
4838
0
                                             "transcoding)");
4839
    }
4840
3.65k
    else {
4841
3.65k
        const auto view = src.view();
4842
3.65k
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4843
4844
3.65k
        if (!validate_unicode(value)) {
4845
966
            return detail::unexpected_scan_error(
4846
966
                scan_error::invalid_scanned_value,
4847
966
                "Invalid encoding in scanned string_view");
4848
966
        }
4849
4850
2.68k
        return SCN_MOVE(result);
4851
3.65k
    }
4852
3.65k
}
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEESA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEERSA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEE
_ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEE
Line
Count
Source
4813
462
{
4814
462
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4815
4816
462
    auto src = [&]() {
4817
462
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
462
            return make_contiguous_buffer(
4819
462
                ranges::subrange{range.begin().base(), result.base()});
4820
462
        }
4821
462
        else {
4822
462
            return make_contiguous_buffer(
4823
462
                ranges::subrange{range.begin(), result});
4824
462
        }
4825
462
    }();
4826
462
    using src_type = decltype(src);
4827
4828
462
    if (src.stores_allocated_string()) {
4829
0
        return detail::unexpected_scan_error(
4830
0
            scan_error::invalid_format_string,
4831
0
            "Cannot read a string_view from this source range (not "
4832
0
            "contiguous)");
4833
0
    }
4834
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4835
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4836
                                             "Cannot read a string_view from "
4837
                                             "this source range (would require "
4838
                                             "transcoding)");
4839
    }
4840
462
    else {
4841
462
        const auto view = src.view();
4842
462
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4843
4844
462
        if (!validate_unicode(value)) {
4845
176
            return detail::unexpected_scan_error(
4846
176
                scan_error::invalid_scanned_value,
4847
176
                "Invalid encoding in scanned string_view");
4848
176
        }
4849
4850
286
        return SCN_MOVE(result);
4851
462
    }
4852
462
}
_ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEE
Line
Count
Source
4813
266
{
4814
266
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4815
4816
266
    auto src = [&]() {
4817
266
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
266
            return make_contiguous_buffer(
4819
266
                ranges::subrange{range.begin().base(), result.base()});
4820
266
        }
4821
266
        else {
4822
266
            return make_contiguous_buffer(
4823
266
                ranges::subrange{range.begin(), result});
4824
266
        }
4825
266
    }();
4826
266
    using src_type = decltype(src);
4827
4828
266
    if (src.stores_allocated_string()) {
4829
0
        return detail::unexpected_scan_error(
4830
0
            scan_error::invalid_format_string,
4831
0
            "Cannot read a string_view from this source range (not "
4832
0
            "contiguous)");
4833
0
    }
4834
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4835
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4836
                                             "Cannot read a string_view from "
4837
                                             "this source range (would require "
4838
                                             "transcoding)");
4839
    }
4840
266
    else {
4841
266
        const auto view = src.view();
4842
266
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4843
4844
266
        if (!validate_unicode(value)) {
4845
96
            return detail::unexpected_scan_error(
4846
96
                scan_error::invalid_scanned_value,
4847
96
                "Invalid encoding in scanned string_view");
4848
96
        }
4849
4850
170
        return SCN_MOVE(result);
4851
266
    }
4852
266
}
_ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EES8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEE
Line
Count
Source
4813
1.00k
{
4814
1.00k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4815
4816
1.00k
    auto src = [&]() {
4817
1.00k
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
1.00k
            return make_contiguous_buffer(
4819
1.00k
                ranges::subrange{range.begin().base(), result.base()});
4820
1.00k
        }
4821
1.00k
        else {
4822
1.00k
            return make_contiguous_buffer(
4823
1.00k
                ranges::subrange{range.begin(), result});
4824
1.00k
        }
4825
1.00k
    }();
4826
1.00k
    using src_type = decltype(src);
4827
4828
1.00k
    if (src.stores_allocated_string()) {
4829
0
        return detail::unexpected_scan_error(
4830
0
            scan_error::invalid_format_string,
4831
0
            "Cannot read a string_view from this source range (not "
4832
0
            "contiguous)");
4833
0
    }
4834
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4835
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4836
                                             "Cannot read a string_view from "
4837
                                             "this source range (would require "
4838
                                             "transcoding)");
4839
    }
4840
1.00k
    else {
4841
1.00k
        const auto view = src.view();
4842
1.00k
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4843
4844
1.00k
        if (!validate_unicode(value)) {
4845
326
            return detail::unexpected_scan_error(
4846
326
                scan_error::invalid_scanned_value,
4847
326
                "Invalid encoding in scanned string_view");
4848
326
        }
4849
4850
680
        return SCN_MOVE(result);
4851
1.00k
    }
4852
1.00k
}
_ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EERS8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEE
Line
Count
Source
4813
550
{
4814
550
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4815
4816
550
    auto src = [&]() {
4817
550
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
550
            return make_contiguous_buffer(
4819
550
                ranges::subrange{range.begin().base(), result.base()});
4820
550
        }
4821
550
        else {
4822
550
            return make_contiguous_buffer(
4823
550
                ranges::subrange{range.begin(), result});
4824
550
        }
4825
550
    }();
4826
550
    using src_type = decltype(src);
4827
4828
550
    if (src.stores_allocated_string()) {
4829
0
        return detail::unexpected_scan_error(
4830
0
            scan_error::invalid_format_string,
4831
0
            "Cannot read a string_view from this source range (not "
4832
0
            "contiguous)");
4833
0
    }
4834
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4835
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4836
                                             "Cannot read a string_view from "
4837
                                             "this source range (would require "
4838
                                             "transcoding)");
4839
    }
4840
550
    else {
4841
550
        const auto view = src.view();
4842
550
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4843
4844
550
        if (!validate_unicode(value)) {
4845
52
            return detail::unexpected_scan_error(
4846
52
                scan_error::invalid_scanned_value,
4847
52
                "Invalid encoding in scanned string_view");
4848
52
        }
4849
4850
498
        return SCN_MOVE(result);
4851
550
    }
4852
550
}
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEESA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEERSA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EES8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EERS8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEESA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEERSA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EES8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EERS8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEESA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEERSA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEE
_ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEE
Line
Count
Source
4813
200
{
4814
200
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4815
4816
200
    auto src = [&]() {
4817
200
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
200
            return make_contiguous_buffer(
4819
200
                ranges::subrange{range.begin().base(), result.base()});
4820
200
        }
4821
200
        else {
4822
200
            return make_contiguous_buffer(
4823
200
                ranges::subrange{range.begin(), result});
4824
200
        }
4825
200
    }();
4826
200
    using src_type = decltype(src);
4827
4828
200
    if (src.stores_allocated_string()) {
4829
0
        return detail::unexpected_scan_error(
4830
0
            scan_error::invalid_format_string,
4831
0
            "Cannot read a string_view from this source range (not "
4832
0
            "contiguous)");
4833
0
    }
4834
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4835
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4836
                                             "Cannot read a string_view from "
4837
                                             "this source range (would require "
4838
                                             "transcoding)");
4839
    }
4840
200
    else {
4841
200
        const auto view = src.view();
4842
200
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4843
4844
200
        if (!validate_unicode(value)) {
4845
72
            return detail::unexpected_scan_error(
4846
72
                scan_error::invalid_scanned_value,
4847
72
                "Invalid encoding in scanned string_view");
4848
72
        }
4849
4850
128
        return SCN_MOVE(result);
4851
200
    }
4852
200
}
_ZN3scn2v44impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEE
Line
Count
Source
4813
136
{
4814
136
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4815
4816
136
    auto src = [&]() {
4817
136
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
136
            return make_contiguous_buffer(
4819
136
                ranges::subrange{range.begin().base(), result.base()});
4820
136
        }
4821
136
        else {
4822
136
            return make_contiguous_buffer(
4823
136
                ranges::subrange{range.begin(), result});
4824
136
        }
4825
136
    }();
4826
136
    using src_type = decltype(src);
4827
4828
136
    if (src.stores_allocated_string()) {
4829
0
        return detail::unexpected_scan_error(
4830
0
            scan_error::invalid_format_string,
4831
0
            "Cannot read a string_view from this source range (not "
4832
0
            "contiguous)");
4833
0
    }
4834
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4835
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4836
                                             "Cannot read a string_view from "
4837
                                             "this source range (would require "
4838
                                             "transcoding)");
4839
    }
4840
136
    else {
4841
136
        const auto view = src.view();
4842
136
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4843
4844
136
        if (!validate_unicode(value)) {
4845
0
            return detail::unexpected_scan_error(
4846
0
                scan_error::invalid_scanned_value,
4847
0
                "Invalid encoding in scanned string_view");
4848
0
        }
4849
4850
136
        return SCN_MOVE(result);
4851
136
    }
4852
136
}
_ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EES8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEE
Line
Count
Source
4813
868
{
4814
868
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4815
4816
868
    auto src = [&]() {
4817
868
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
868
            return make_contiguous_buffer(
4819
868
                ranges::subrange{range.begin().base(), result.base()});
4820
868
        }
4821
868
        else {
4822
868
            return make_contiguous_buffer(
4823
868
                ranges::subrange{range.begin(), result});
4824
868
        }
4825
868
    }();
4826
868
    using src_type = decltype(src);
4827
4828
868
    if (src.stores_allocated_string()) {
4829
0
        return detail::unexpected_scan_error(
4830
0
            scan_error::invalid_format_string,
4831
0
            "Cannot read a string_view from this source range (not "
4832
0
            "contiguous)");
4833
0
    }
4834
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4835
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4836
                                             "Cannot read a string_view from "
4837
                                             "this source range (would require "
4838
                                             "transcoding)");
4839
    }
4840
868
    else {
4841
868
        const auto view = src.view();
4842
868
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4843
4844
868
        if (!validate_unicode(value)) {
4845
238
            return detail::unexpected_scan_error(
4846
238
                scan_error::invalid_scanned_value,
4847
238
                "Invalid encoding in scanned string_view");
4848
238
        }
4849
4850
630
        return SCN_MOVE(result);
4851
868
    }
4852
868
}
_ZN3scn2v44impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EERS8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEE
Line
Count
Source
4813
162
{
4814
162
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4815
4816
162
    auto src = [&]() {
4817
162
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4818
162
            return make_contiguous_buffer(
4819
162
                ranges::subrange{range.begin().base(), result.base()});
4820
162
        }
4821
162
        else {
4822
162
            return make_contiguous_buffer(
4823
162
                ranges::subrange{range.begin(), result});
4824
162
        }
4825
162
    }();
4826
162
    using src_type = decltype(src);
4827
4828
162
    if (src.stores_allocated_string()) {
4829
0
        return detail::unexpected_scan_error(
4830
0
            scan_error::invalid_format_string,
4831
0
            "Cannot read a string_view from this source range (not "
4832
0
            "contiguous)");
4833
0
    }
4834
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4835
        return detail::unexpected_scan_error(scan_error::invalid_format_string,
4836
                                             "Cannot read a string_view from "
4837
                                             "this source range (would require "
4838
                                             "transcoding)");
4839
    }
4840
162
    else {
4841
162
        const auto view = src.view();
4842
162
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4843
4844
162
        if (!validate_unicode(value)) {
4845
6
            return detail::unexpected_scan_error(
4846
6
                scan_error::invalid_scanned_value,
4847
6
                "Invalid encoding in scanned string_view");
4848
6
        }
4849
4850
156
        return SCN_MOVE(result);
4851
162
    }
4852
162
}
4853
4854
template <typename SourceCharT>
4855
class word_reader_impl {
4856
public:
4857
    template <typename Range, typename ValueCharT>
4858
    auto read(Range range, std::basic_string<ValueCharT>& value)
4859
        -> scan_expected<ranges::const_iterator_t<Range>>
4860
4.50k
    {
4861
4.50k
        return read_string_impl(range, read_until_classic_space(range), value);
4862
4.50k
    }
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v44impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4860
316
    {
4861
316
        return read_string_impl(range, read_until_classic_space(range), value);
4862
316
    }
_ZN3scn2v44impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Line
Count
Source
4860
948
    {
4861
948
        return read_string_impl(range, read_until_classic_space(range), value);
4862
948
    }
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v44impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4860
316
    {
4861
316
        return read_string_impl(range, read_until_classic_space(range), value);
4862
316
    }
_ZN3scn2v44impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Line
Count
Source
4860
948
    {
4861
948
        return read_string_impl(range, read_until_classic_space(range), value);
4862
948
    }
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v44impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4860
158
    {
4861
158
        return read_string_impl(range, read_until_classic_space(range), value);
4862
158
    }
_ZN3scn2v44impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Line
Count
Source
4860
830
    {
4861
830
        return read_string_impl(range, read_until_classic_space(range), value);
4862
830
    }
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v44impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4860
158
    {
4861
158
        return read_string_impl(range, read_until_classic_space(range), value);
4862
158
    }
_ZN3scn2v44impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Line
Count
Source
4860
830
    {
4861
830
        return read_string_impl(range, read_until_classic_space(range), value);
4862
830
    }
4863
4864
    template <typename Range, typename ValueCharT>
4865
    auto read(Range range, std::basic_string_view<ValueCharT>& value)
4866
        -> scan_expected<ranges::const_iterator_t<Range>>
4867
2.25k
    {
4868
2.25k
        return read_string_view_impl(range, read_until_classic_space(range),
4869
2.25k
                                     value);
4870
2.25k
    }
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
_ZN3scn2v44impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Line
Count
Source
4867
316
    {
4868
316
        return read_string_view_impl(range, read_until_classic_space(range),
4869
316
                                     value);
4870
316
    }
_ZN3scn2v44impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Line
Count
Source
4867
948
    {
4868
948
        return read_string_view_impl(range, read_until_classic_space(range),
4869
948
                                     value);
4870
948
    }
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
_ZN3scn2v44impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Line
Count
Source
4867
158
    {
4868
158
        return read_string_view_impl(range, read_until_classic_space(range),
4869
158
                                     value);
4870
158
    }
_ZN3scn2v44impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Line
Count
Source
4867
830
    {
4868
830
        return read_string_view_impl(range, read_until_classic_space(range),
4869
830
                                     value);
4870
830
    }
4871
};
4872
4873
template <typename SourceCharT>
4874
class custom_word_reader_impl {
4875
public:
4876
    template <typename Range, typename ValueCharT>
4877
    auto read(Range range,
4878
              const detail::format_specs& specs,
4879
              std::basic_string<ValueCharT>& value)
4880
        -> scan_expected<ranges::const_iterator_t<Range>>
4881
400
    {
4882
400
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4883
244
            return read_string_impl(
4884
244
                range,
4885
244
                read_until_code_unit(
4886
244
                    range,
4887
244
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4888
3.90k
                        SourceCharT ch) { return ch == until; }),
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEEENKUlcE_clEc
_ZZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEEENKUlcE_clEc
Line
Count
Source
4888
706
                        SourceCharT ch) { return ch == until; }),
_ZZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEEENKUlcE_clEc
Line
Count
Source
4888
698
                        SourceCharT ch) { return ch == until; }),
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEEENKUlcE_clEc
_ZZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEEENKUlcE_clEc
Line
Count
Source
4888
706
                        SourceCharT ch) { return ch == until; }),
_ZZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEEENKUlcE_clEc
Line
Count
Source
4888
698
                        SourceCharT ch) { return ch == until; }),
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEEENKUlwE_clEw
_ZZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEEENKUlwE_clEw
Line
Count
Source
4888
62
                        SourceCharT ch) { return ch == until; }),
_ZZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEEENKUlwE_clEw
Line
Count
Source
4888
488
                        SourceCharT ch) { return ch == until; }),
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEEENKUlwE_clEw
_ZZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEEENKUlwE_clEw
Line
Count
Source
4888
62
                        SourceCharT ch) { return ch == until; }),
_ZZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEEENKUlwE_clEw
Line
Count
Source
4888
488
                        SourceCharT ch) { return ch == until; }),
4889
244
                value);
4890
244
        }
4891
156
        return read_string_impl(
4892
156
            range,
4893
156
            read_until_code_units(
4894
156
                range, specs.fill.template get_code_units<SourceCharT>()),
4895
156
            value);
4896
400
    }
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
4881
90
    {
4882
90
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4883
40
            return read_string_impl(
4884
40
                range,
4885
40
                read_until_code_unit(
4886
40
                    range,
4887
40
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4888
40
                        SourceCharT ch) { return ch == until; }),
4889
40
                value);
4890
40
        }
4891
50
        return read_string_impl(
4892
50
            range,
4893
50
            read_until_code_units(
4894
50
                range, specs.fill.template get_code_units<SourceCharT>()),
4895
50
            value);
4896
90
    }
_ZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
4881
58
    {
4882
58
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4883
30
            return read_string_impl(
4884
30
                range,
4885
30
                read_until_code_unit(
4886
30
                    range,
4887
30
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4888
30
                        SourceCharT ch) { return ch == until; }),
4889
30
                value);
4890
30
        }
4891
28
        return read_string_impl(
4892
28
            range,
4893
28
            read_until_code_units(
4894
28
                range, specs.fill.template get_code_units<SourceCharT>()),
4895
28
            value);
4896
58
    }
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
4881
90
    {
4882
90
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4883
40
            return read_string_impl(
4884
40
                range,
4885
40
                read_until_code_unit(
4886
40
                    range,
4887
40
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4888
40
                        SourceCharT ch) { return ch == until; }),
4889
40
                value);
4890
40
        }
4891
50
        return read_string_impl(
4892
50
            range,
4893
50
            read_until_code_units(
4894
50
                range, specs.fill.template get_code_units<SourceCharT>()),
4895
50
            value);
4896
90
    }
_ZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
4881
58
    {
4882
58
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4883
30
            return read_string_impl(
4884
30
                range,
4885
30
                read_until_code_unit(
4886
30
                    range,
4887
30
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4888
30
                        SourceCharT ch) { return ch == until; }),
4889
30
                value);
4890
30
        }
4891
28
        return read_string_impl(
4892
28
            range,
4893
28
            read_until_code_units(
4894
28
                range, specs.fill.template get_code_units<SourceCharT>()),
4895
28
            value);
4896
58
    }
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
4881
14
    {
4882
14
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4883
14
            return read_string_impl(
4884
14
                range,
4885
14
                read_until_code_unit(
4886
14
                    range,
4887
14
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4888
14
                        SourceCharT ch) { return ch == until; }),
4889
14
                value);
4890
14
        }
4891
0
        return read_string_impl(
4892
0
            range,
4893
0
            read_until_code_units(
4894
0
                range, specs.fill.template get_code_units<SourceCharT>()),
4895
0
            value);
4896
14
    }
_ZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
4881
38
    {
4882
38
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4883
38
            return read_string_impl(
4884
38
                range,
4885
38
                read_until_code_unit(
4886
38
                    range,
4887
38
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4888
38
                        SourceCharT ch) { return ch == until; }),
4889
38
                value);
4890
38
        }
4891
0
        return read_string_impl(
4892
0
            range,
4893
0
            read_until_code_units(
4894
0
                range, specs.fill.template get_code_units<SourceCharT>()),
4895
0
            value);
4896
38
    }
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
4881
14
    {
4882
14
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4883
14
            return read_string_impl(
4884
14
                range,
4885
14
                read_until_code_unit(
4886
14
                    range,
4887
14
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4888
14
                        SourceCharT ch) { return ch == until; }),
4889
14
                value);
4890
14
        }
4891
0
        return read_string_impl(
4892
0
            range,
4893
0
            read_until_code_units(
4894
0
                range, specs.fill.template get_code_units<SourceCharT>()),
4895
0
            value);
4896
14
    }
_ZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
4881
38
    {
4882
38
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4883
38
            return read_string_impl(
4884
38
                range,
4885
38
                read_until_code_unit(
4886
38
                    range,
4887
38
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4888
38
                        SourceCharT ch) { return ch == until; }),
4889
38
                value);
4890
38
        }
4891
0
        return read_string_impl(
4892
0
            range,
4893
0
            read_until_code_units(
4894
0
                range, specs.fill.template get_code_units<SourceCharT>()),
4895
0
            value);
4896
38
    }
4897
4898
    template <typename Range, typename ValueCharT>
4899
    auto read(Range range,
4900
              const detail::format_specs& specs,
4901
              std::basic_string_view<ValueCharT>& value)
4902
        -> scan_expected<ranges::const_iterator_t<Range>>
4903
200
    {
4904
200
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4905
122
            return read_string_view_impl(
4906
122
                range,
4907
122
                read_until_code_unit(
4908
122
                    range,
4909
122
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4910
1.95k
                        SourceCharT ch) { return ch == until; }),
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEEENKUlcE_clEc
_ZZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEEENKUlcE_clEc
Line
Count
Source
4910
706
                        SourceCharT ch) { return ch == until; }),
_ZZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEEENKUlcE_clEc
Line
Count
Source
4910
698
                        SourceCharT ch) { return ch == until; }),
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEEENKUlwE_clEw
_ZZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEEENKUlwE_clEw
Line
Count
Source
4910
62
                        SourceCharT ch) { return ch == until; }),
_ZZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEEENKUlwE_clEw
Line
Count
Source
4910
488
                        SourceCharT ch) { return ch == until; }),
4911
122
                value);
4912
122
        }
4913
78
        return read_string_view_impl(
4914
78
            range,
4915
78
            read_until_code_units(
4916
78
                range, specs.fill.template get_code_units<SourceCharT>()),
4917
78
            value);
4918
200
    }
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
_ZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Line
Count
Source
4903
90
    {
4904
90
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4905
40
            return read_string_view_impl(
4906
40
                range,
4907
40
                read_until_code_unit(
4908
40
                    range,
4909
40
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4910
40
                        SourceCharT ch) { return ch == until; }),
4911
40
                value);
4912
40
        }
4913
50
        return read_string_view_impl(
4914
50
            range,
4915
50
            read_until_code_units(
4916
50
                range, specs.fill.template get_code_units<SourceCharT>()),
4917
50
            value);
4918
90
    }
_ZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Line
Count
Source
4903
58
    {
4904
58
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4905
30
            return read_string_view_impl(
4906
30
                range,
4907
30
                read_until_code_unit(
4908
30
                    range,
4909
30
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4910
30
                        SourceCharT ch) { return ch == until; }),
4911
30
                value);
4912
30
        }
4913
28
        return read_string_view_impl(
4914
28
            range,
4915
28
            read_until_code_units(
4916
28
                range, specs.fill.template get_code_units<SourceCharT>()),
4917
28
            value);
4918
58
    }
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
_ZN3scn2v44impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Line
Count
Source
4903
14
    {
4904
14
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4905
14
            return read_string_view_impl(
4906
14
                range,
4907
14
                read_until_code_unit(
4908
14
                    range,
4909
14
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4910
14
                        SourceCharT ch) { return ch == until; }),
4911
14
                value);
4912
14
        }
4913
0
        return read_string_view_impl(
4914
0
            range,
4915
0
            read_until_code_units(
4916
0
                range, specs.fill.template get_code_units<SourceCharT>()),
4917
0
            value);
4918
14
    }
_ZN3scn2v44impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Line
Count
Source
4903
38
    {
4904
38
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4905
38
            return read_string_view_impl(
4906
38
                range,
4907
38
                read_until_code_unit(
4908
38
                    range,
4909
38
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4910
38
                        SourceCharT ch) { return ch == until; }),
4911
38
                value);
4912
38
        }
4913
0
        return read_string_view_impl(
4914
0
            range,
4915
0
            read_until_code_units(
4916
0
                range, specs.fill.template get_code_units<SourceCharT>()),
4917
0
            value);
4918
38
    }
4919
};
4920
4921
#if !SCN_DISABLE_REGEX
4922
template <typename SourceCharT>
4923
class regex_string_reader_impl {
4924
public:
4925
    template <typename Range, typename ValueCharT>
4926
    auto read(Range range,
4927
              std::basic_string_view<SourceCharT> pattern,
4928
              detail::regex_flags flags,
4929
              std::basic_string<ValueCharT>& value)
4930
        -> scan_expected<ranges::const_iterator_t<Range>>
4931
404
    {
4932
404
        SCN_TRY(it, impl(range, pattern, flags));
4933
60
        return read_string_impl(range, it, value);
4934
404
    }
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEENSA_11regex_flagsERNSI_12basic_stringIT0_NSR_ISW_EENSI_9allocatorISW_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEENS9_11regex_flagsERNSG_12basic_stringIT0_NSP_ISU_EENSG_9allocatorISU_EEEE
_ZN3scn2v44impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEENS0_6detail11regex_flagsERNSF_12basic_stringIT0_NSO_ISU_EENSF_9allocatorISU_EEEE
Line
Count
Source
4931
70
    {
4932
70
        SCN_TRY(it, impl(range, pattern, flags));
4933
0
        return read_string_impl(range, it, value);
4934
70
    }
_ZN3scn2v44impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEENS0_6detail11regex_flagsERNSD_12basic_stringIT0_NSM_ISS_EENSD_9allocatorISS_EEEE
Line
Count
Source
4931
132
    {
4932
132
        SCN_TRY(it, impl(range, pattern, flags));
4933
30
        return read_string_impl(range, it, value);
4934
132
    }
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEENSA_11regex_flagsERNSI_12basic_stringIT0_NSR_ISW_EENSI_9allocatorISW_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEENS9_11regex_flagsERNSG_12basic_stringIT0_NSP_ISU_EENSG_9allocatorISU_EEEE
_ZN3scn2v44impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEENS0_6detail11regex_flagsERNSF_12basic_stringIT0_NSO_ISU_EENSF_9allocatorISU_EEEE
Line
Count
Source
4931
70
    {
4932
70
        SCN_TRY(it, impl(range, pattern, flags));
4933
0
        return read_string_impl(range, it, value);
4934
70
    }
_ZN3scn2v44impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEENS0_6detail11regex_flagsERNSD_12basic_stringIT0_NSM_ISS_EENSD_9allocatorISS_EEEE
Line
Count
Source
4931
132
    {
4932
132
        SCN_TRY(it, impl(range, pattern, flags));
4933
30
        return read_string_impl(range, it, value);
4934
132
    }
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIwNSI_11char_traitsIwEEEENSA_11regex_flagsERNSI_12basic_stringIT0_NSR_ISW_EENSI_9allocatorISW_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIwNSG_11char_traitsIwEEEENS9_11regex_flagsERNSG_12basic_stringIT0_NSP_ISU_EENSG_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIwNSF_11char_traitsIwEEEENS0_6detail11regex_flagsERNSF_12basic_stringIT0_NSO_ISU_EENSF_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIwNSD_11char_traitsIwEEEENS0_6detail11regex_flagsERNSD_12basic_stringIT0_NSM_ISS_EENSD_9allocatorISS_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIwNSI_11char_traitsIwEEEENSA_11regex_flagsERNSI_12basic_stringIT0_NSR_ISW_EENSI_9allocatorISW_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIwNSG_11char_traitsIwEEEENS9_11regex_flagsERNSG_12basic_stringIT0_NSP_ISU_EENSG_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIwNSF_11char_traitsIwEEEENS0_6detail11regex_flagsERNSF_12basic_stringIT0_NSO_ISU_EENSF_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIwNSD_11char_traitsIwEEEENS0_6detail11regex_flagsERNSD_12basic_stringIT0_NSM_ISS_EENSD_9allocatorISS_EEEE
4935
4936
    template <typename Range, typename ValueCharT>
4937
    auto read(Range range,
4938
              std::basic_string_view<SourceCharT> pattern,
4939
              detail::regex_flags flags,
4940
              std::basic_string_view<ValueCharT>& value)
4941
        -> scan_expected<ranges::const_iterator_t<Range>>
4942
202
    {
4943
202
        SCN_TRY(it, impl(range, pattern, flags));
4944
30
        return read_string_view_impl(range, it, value);
4945
202
    }
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEENSA_11regex_flagsERNSQ_IT0_NSR_ISV_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEENS9_11regex_flagsERNSO_IT0_NSP_IST_EEEE
_ZN3scn2v44impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEENS0_6detail11regex_flagsERNSN_IT0_NSO_IST_EEEE
Line
Count
Source
4942
70
    {
4943
70
        SCN_TRY(it, impl(range, pattern, flags));
4944
0
        return read_string_view_impl(range, it, value);
4945
70
    }
_ZN3scn2v44impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEENS0_6detail11regex_flagsERNSL_IT0_NSM_ISR_EEEE
Line
Count
Source
4942
132
    {
4943
132
        SCN_TRY(it, impl(range, pattern, flags));
4944
30
        return read_string_view_impl(range, it, value);
4945
132
    }
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEENSA_11regex_flagsERNSQ_IT0_NSR_ISV_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEENS9_11regex_flagsERNSO_IT0_NSP_IST_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEENS0_6detail11regex_flagsERNSN_IT0_NSO_IST_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEENS0_6detail11regex_flagsERNSL_IT0_NSM_ISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIwNSI_11char_traitsIwEEEENSA_11regex_flagsERNSQ_IT0_NSR_ISV_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIwNSG_11char_traitsIwEEEENS9_11regex_flagsERNSO_IT0_NSP_IST_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIwNSF_11char_traitsIwEEEENS0_6detail11regex_flagsERNSN_IT0_NSO_IST_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIwNSD_11char_traitsIwEEEENS0_6detail11regex_flagsERNSL_IT0_NSM_ISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIwNSI_11char_traitsIwEEEENSA_11regex_flagsERNSQ_IT0_NSR_ISV_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIwNSG_11char_traitsIwEEEENS9_11regex_flagsERNSO_IT0_NSP_IST_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIwNSF_11char_traitsIwEEEENS0_6detail11regex_flagsERNSN_IT0_NSO_IST_EEEE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIwNSD_11char_traitsIwEEEENS0_6detail11regex_flagsERNSL_IT0_NSM_ISR_EEEE
4946
4947
private:
4948
    template <typename Range>
4949
    auto impl(Range range,
4950
              std::basic_string_view<SourceCharT> pattern,
4951
              detail::regex_flags flags)
4952
        -> scan_expected<ranges::const_iterator_t<Range>>
4953
606
    {
4954
        if constexpr (!SCN_REGEX_SUPPORTS_WIDE_STRINGS &&
4955
0
                      !std::is_same_v<SourceCharT, char>) {
4956
0
            return detail::unexpected_scan_error(
4957
0
                scan_error::invalid_format_string,
4958
0
                "Regex backend doesn't support wide strings as input");
4959
        }
4960
606
        else {
4961
606
            if (!is_entire_source_contiguous(range)) {
4962
210
                return detail::unexpected_scan_error(
4963
210
                    scan_error::invalid_format_string,
4964
210
                    "Cannot use regex with a non-contiguous source "
4965
210
                    "range");
4966
210
            }
4967
4968
396
            auto input = get_as_contiguous(range);
4969
396
            SCN_TRY(it,
4970
90
                    read_regex_string_impl<SourceCharT>(pattern, flags, input));
4971
90
            return ranges::next(range.begin(),
4972
90
                                ranges::distance(input.begin(), it));
4973
396
        }
4974
606
    }
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIcE4implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEENSA_11regex_flagsE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIcE4implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEENS9_11regex_flagsE
_ZN3scn2v44impl24regex_string_reader_implIcE4implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEENS0_6detail11regex_flagsE
Line
Count
Source
4953
210
    {
4954
        if constexpr (!SCN_REGEX_SUPPORTS_WIDE_STRINGS &&
4955
                      !std::is_same_v<SourceCharT, char>) {
4956
            return detail::unexpected_scan_error(
4957
                scan_error::invalid_format_string,
4958
                "Regex backend doesn't support wide strings as input");
4959
        }
4960
210
        else {
4961
210
            if (!is_entire_source_contiguous(range)) {
4962
210
                return detail::unexpected_scan_error(
4963
210
                    scan_error::invalid_format_string,
4964
210
                    "Cannot use regex with a non-contiguous source "
4965
210
                    "range");
4966
210
            }
4967
4968
0
            auto input = get_as_contiguous(range);
4969
0
            SCN_TRY(it,
4970
0
                    read_regex_string_impl<SourceCharT>(pattern, flags, input));
4971
0
            return ranges::next(range.begin(),
4972
0
                                ranges::distance(input.begin(), it));
4973
0
        }
4974
210
    }
_ZN3scn2v44impl24regex_string_reader_implIcE4implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEENS0_6detail11regex_flagsE
Line
Count
Source
4953
396
    {
4954
        if constexpr (!SCN_REGEX_SUPPORTS_WIDE_STRINGS &&
4955
                      !std::is_same_v<SourceCharT, char>) {
4956
            return detail::unexpected_scan_error(
4957
                scan_error::invalid_format_string,
4958
                "Regex backend doesn't support wide strings as input");
4959
        }
4960
396
        else {
4961
396
            if (!is_entire_source_contiguous(range)) {
4962
0
                return detail::unexpected_scan_error(
4963
0
                    scan_error::invalid_format_string,
4964
0
                    "Cannot use regex with a non-contiguous source "
4965
0
                    "range");
4966
0
            }
4967
4968
396
            auto input = get_as_contiguous(range);
4969
396
            SCN_TRY(it,
4970
90
                    read_regex_string_impl<SourceCharT>(pattern, flags, input));
4971
90
            return ranges::next(range.begin(),
4972
90
                                ranges::distance(input.begin(), it));
4973
396
        }
4974
396
    }
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIwNSI_11char_traitsIwEEEENSA_11regex_flagsE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIwNSG_11char_traitsIwEEEENS9_11regex_flagsE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIwNSF_11char_traitsIwEEEENS0_6detail11regex_flagsE
Unexecuted instantiation: _ZN3scn2v44impl24regex_string_reader_implIwE4implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIwNSD_11char_traitsIwEEEENS0_6detail11regex_flagsE
4975
};
4976
#endif
4977
4978
template <typename SourceCharT>
4979
class character_reader_impl {
4980
public:
4981
    // Note: no localized version,
4982
    // since it's equivalent in behavior
4983
4984
    template <typename Range, typename ValueCharT>
4985
    auto read(Range range, std::basic_string<ValueCharT>& value)
4986
        -> scan_expected<ranges::const_iterator_t<Range>>
4987
168
    {
4988
168
        return read_impl(
4989
168
            range,
4990
168
            [&](const auto& rng) {
4991
168
                return read_string_impl(rng, read_all(rng), value);
4992
168
            },
Unexecuted instantiation: _ZZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEEENKUlRKSK_E_clISG_EEDaSZ_
_ZZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEEENKUlRKSH_E_clISD_EEDaSW_
Line
Count
Source
4990
56
            [&](const auto& rng) {
4991
56
                return read_string_impl(rng, read_all(rng), value);
4992
56
            },
Unexecuted instantiation: _ZZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEEENKUlRKSK_E_clISG_EEDaSZ_
_ZZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEEENKUlRKSH_E_clISD_EEDaSW_
Line
Count
Source
4990
56
            [&](const auto& rng) {
4991
56
                return read_string_impl(rng, read_all(rng), value);
4992
56
            },
Unexecuted instantiation: _ZZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEEENKUlRKSK_E_clISG_EEDaSZ_
_ZZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEEENKUlRKSH_E_clISD_EEDaSW_
Line
Count
Source
4990
28
            [&](const auto& rng) {
4991
28
                return read_string_impl(rng, read_all(rng), value);
4992
28
            },
Unexecuted instantiation: _ZZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEEENKUlRKSK_E_clISG_EEDaSZ_
_ZZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEEENKUlRKSH_E_clISD_EEDaSW_
Line
Count
Source
4990
28
            [&](const auto& rng) {
4991
28
                return read_string_impl(rng, read_all(rng), value);
4992
28
            },
4993
168
            detail::priority_tag<1>{});
4994
168
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4987
56
    {
4988
56
        return read_impl(
4989
56
            range,
4990
56
            [&](const auto& rng) {
4991
56
                return read_string_impl(rng, read_all(rng), value);
4992
56
            },
4993
56
            detail::priority_tag<1>{});
4994
56
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4987
56
    {
4988
56
        return read_impl(
4989
56
            range,
4990
56
            [&](const auto& rng) {
4991
56
                return read_string_impl(rng, read_all(rng), value);
4992
56
            },
4993
56
            detail::priority_tag<1>{});
4994
56
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4987
28
    {
4988
28
        return read_impl(
4989
28
            range,
4990
28
            [&](const auto& rng) {
4991
28
                return read_string_impl(rng, read_all(rng), value);
4992
28
            },
4993
28
            detail::priority_tag<1>{});
4994
28
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4987
28
    {
4988
28
        return read_impl(
4989
28
            range,
4990
28
            [&](const auto& rng) {
4991
28
                return read_string_impl(rng, read_all(rng), value);
4992
28
            },
4993
28
            detail::priority_tag<1>{});
4994
28
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
4995
4996
    template <typename Range, typename ValueCharT>
4997
    auto read(Range range, std::basic_string_view<ValueCharT>& value)
4998
        -> scan_expected<ranges::const_iterator_t<Range>>
4999
84
    {
5000
84
        return read_impl(
5001
84
            range,
5002
84
            [&](const auto& rng) {
5003
84
                return read_string_view_impl(rng, read_all(rng), value);
5004
84
            },
Unexecuted instantiation: _ZZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEEENKUlRKSK_E_clISG_EEDaSX_
_ZZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEEENKUlRKSH_E_clISD_EEDaSU_
Line
Count
Source
5002
56
            [&](const auto& rng) {
5003
56
                return read_string_view_impl(rng, read_all(rng), value);
5004
56
            },
Unexecuted instantiation: _ZZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEEENKUlRKSK_E_clISG_EEDaSX_
Unexecuted instantiation: _ZZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEEENKUlRKSH_E_clISD_EEDaSU_
Unexecuted instantiation: _ZZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEEENKUlRKSK_E_clISG_EEDaSX_
Unexecuted instantiation: _ZZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEEENKUlRKSH_E_clISD_EEDaSU_
Unexecuted instantiation: _ZZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEEENKUlRKSK_E_clISG_EEDaSX_
_ZZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEEENKUlRKSH_E_clISD_EEDaSU_
Line
Count
Source
5002
28
            [&](const auto& rng) {
5003
28
                return read_string_view_impl(rng, read_all(rng), value);
5004
28
            },
5005
84
            detail::priority_tag<1>{});
5006
84
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
_ZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Line
Count
Source
4999
56
    {
5000
56
        return read_impl(
5001
56
            range,
5002
56
            [&](const auto& rng) {
5003
56
                return read_string_view_impl(rng, read_all(rng), value);
5004
56
            },
5005
56
            detail::priority_tag<1>{});
5006
56
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
_ZN3scn2v44impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Line
Count
Source
4999
28
    {
5000
28
        return read_impl(
5001
28
            range,
5002
28
            [&](const auto& rng) {
5003
28
                return read_string_view_impl(rng, read_all(rng), value);
5004
28
            },
5005
28
            detail::priority_tag<1>{});
5006
28
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
5007
5008
private:
5009
    template <typename View, typename ReadCb>
5010
    static auto read_impl(const take_width_view<View>& range,
5011
                          ReadCb&& read_cb,
5012
                          detail::priority_tag<1>)
5013
        -> scan_expected<ranges::const_iterator_t<take_width_view<View>&>>
5014
252
    {
5015
252
        return read_cb(range);
5016
252
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_12basic_stringIT0_NSJ_11char_traitsISS_EENSJ_9allocatorISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS12_OSS_NS9_12priority_tagILm1EEE
_ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readINS1_15take_width_viewISB_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSZ_OSP_NS0_6detail12priority_tagILm1EEE
Line
Count
Source
5014
56
    {
5015
56
        return read_cb(range);
5016
56
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_12basic_stringIT0_NSJ_11char_traitsISS_EENSJ_9allocatorISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS12_OSS_NS9_12priority_tagILm1EEE
_ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readINS1_15take_width_viewISB_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSZ_OSP_NS0_6detail12priority_tagILm1EEE
Line
Count
Source
5014
56
    {
5015
56
        return read_cb(range);
5016
56
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_17basic_string_viewIT0_NSJ_11char_traitsISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS10_OSS_NS9_12priority_tagILm1EEE
_ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readINS1_15take_width_viewISB_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSX_OSP_NS0_6detail12priority_tagILm1EEE
Line
Count
Source
5014
56
    {
5015
56
        return read_cb(range);
5016
56
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_17basic_string_viewIT0_NSJ_11char_traitsISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS10_OSS_NS9_12priority_tagILm1EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readINS1_15take_width_viewISB_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSX_OSP_NS0_6detail12priority_tagILm1EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_12basic_stringIT0_NSJ_11char_traitsISS_EENSJ_9allocatorISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS12_OSS_NS9_12priority_tagILm1EEE
_ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readINS1_15take_width_viewISB_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSZ_OSP_NS0_6detail12priority_tagILm1EEE
Line
Count
Source
5014
28
    {
5015
28
        return read_cb(range);
5016
28
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_12basic_stringIT0_NSJ_11char_traitsISS_EENSJ_9allocatorISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS12_OSS_NS9_12priority_tagILm1EEE
_ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readINS1_15take_width_viewISB_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSZ_OSP_NS0_6detail12priority_tagILm1EEE
Line
Count
Source
5014
28
    {
5015
28
        return read_cb(range);
5016
28
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_17basic_string_viewIT0_NSJ_11char_traitsISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS10_OSS_NS9_12priority_tagILm1EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readINS1_15take_width_viewISB_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSX_OSP_NS0_6detail12priority_tagILm1EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_17basic_string_viewIT0_NSJ_11char_traitsISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS10_OSS_NS9_12priority_tagILm1EEE
_ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readINS1_15take_width_viewISB_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSX_OSP_NS0_6detail12priority_tagILm1EEE
Line
Count
Source
5014
28
    {
5015
28
        return read_cb(range);
5016
28
    }
5017
5018
    template <typename Range, typename ReadCb>
5019
    static auto read_impl(Range, ReadCb&&, detail::priority_tag<0>)
5020
        -> scan_expected<ranges::const_iterator_t<Range>>
5021
0
    {
5022
0
        return detail::unexpected_scan_error(
5023
0
            scan_error::invalid_format_string,
5024
0
            "Cannot read characters {:c} without maximum field width");
5025
0
    }
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_12basic_stringIT0_NSH_11char_traitsISQ_EENSH_9allocatorISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readISB_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_12basic_stringIT0_NSE_11char_traitsISN_EENSE_9allocatorISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_12basic_stringIT0_NSH_11char_traitsISQ_EENSH_9allocatorISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readISB_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_12basic_stringIT0_NSE_11char_traitsISN_EENSE_9allocatorISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_17basic_string_viewIT0_NSH_11char_traitsISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readISB_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_17basic_string_viewIT0_NSE_11char_traitsISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_17basic_string_viewIT0_NSH_11char_traitsISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readISB_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_17basic_string_viewIT0_NSE_11char_traitsISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_12basic_stringIT0_NSH_11char_traitsISQ_EENSH_9allocatorISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readISB_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_12basic_stringIT0_NSE_11char_traitsISN_EENSE_9allocatorISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_12basic_stringIT0_NSH_11char_traitsISQ_EENSH_9allocatorISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readISB_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_12basic_stringIT0_NSE_11char_traitsISN_EENSE_9allocatorISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_17basic_string_viewIT0_NSH_11char_traitsISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readISB_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_17basic_string_viewIT0_NSE_11char_traitsISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_17basic_string_viewIT0_NSH_11char_traitsISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v44impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readISB_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_17basic_string_viewIT0_NSE_11char_traitsISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
5026
};
5027
5028
struct nonascii_specs_handler {
5029
    void on_charset_single(char32_t cp)
5030
417k
    {
5031
417k
        on_charset_range(cp, cp + 1);
5032
417k
    }
5033
5034
    void on_charset_range(char32_t begin, char32_t end)
5035
420k
    {
5036
420k
        if (end <= 127) {
5037
216k
            return;
5038
216k
        }
5039
5040
40.6M
        for (auto& elem : extra_ranges) {
5041
            // TODO: check for overlap
5042
40.6M
            if (elem.first == end) {
5043
522
                elem.first = begin;
5044
522
                return;
5045
522
            }
5046
5047
40.6M
            if (elem.second == begin) {
5048
2.13k
                elem.second = end;
5049
2.13k
                return;
5050
2.13k
            }
5051
40.6M
        }
5052
5053
201k
        extra_ranges.push_back(std::make_pair(begin, end));
5054
201k
    }
5055
5056
    constexpr void on_charset_inverted() const
5057
774
    {
5058
        // no-op
5059
774
    }
5060
5061
    constexpr void on_error(const char* msg)
5062
0
    {
5063
0
        on_error(scan_error{scan_error::invalid_format_string, msg});
5064
0
    }
5065
    constexpr void on_error(scan_error e)
5066
0
    {
5067
0
        SCN_UNLIKELY_ATTR
5068
0
        err = unexpected(e);
5069
0
    }
5070
5071
    constexpr scan_expected<void> get_error() const
5072
427k
    {
5073
427k
        return err;
5074
427k
    }
5075
5076
    std::vector<std::pair<char32_t, char32_t>> extra_ranges;
5077
    scan_expected<void> err;
5078
};
5079
5080
template <typename SourceCharT>
5081
class character_set_reader_impl {
5082
public:
5083
    template <typename Range, typename ValueCharT>
5084
    auto read(Range range,
5085
              const detail::format_specs& specs,
5086
              std::basic_string<ValueCharT>& value)
5087
        -> scan_expected<ranges::const_iterator_t<Range>>
5088
2.94k
    {
5089
2.94k
        auto it = read_source_impl(range, {specs});
5090
2.94k
        if (SCN_UNLIKELY(!it)) {
5091
772
            return unexpected(it.error());
5092
772
        }
5093
5094
2.16k
        return read_string_impl(range, *it, value);
5095
2.94k
    }
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v44impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
5088
274
    {
5089
274
        auto it = read_source_impl(range, {specs});
5090
274
        if (SCN_UNLIKELY(!it)) {
5091
8
            return unexpected(it.error());
5092
8
        }
5093
5094
266
        return read_string_impl(range, *it, value);
5095
274
    }
_ZN3scn2v44impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
5088
872
    {
5089
872
        auto it = read_source_impl(range, {specs});
5090
872
        if (SCN_UNLIKELY(!it)) {
5091
352
            return unexpected(it.error());
5092
352
        }
5093
5094
520
        return read_string_impl(range, *it, value);
5095
872
    }
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v44impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
5088
274
    {
5089
274
        auto it = read_source_impl(range, {specs});
5090
274
        if (SCN_UNLIKELY(!it)) {
5091
8
            return unexpected(it.error());
5092
8
        }
5093
5094
266
        return read_string_impl(range, *it, value);
5095
274
    }
_ZN3scn2v44impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
5088
872
    {
5089
872
        auto it = read_source_impl(range, {specs});
5090
872
        if (SCN_UNLIKELY(!it)) {
5091
352
            return unexpected(it.error());
5092
352
        }
5093
5094
520
        return read_string_impl(range, *it, value);
5095
872
    }
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v44impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
5088
144
    {
5089
144
        auto it = read_source_impl(range, {specs});
5090
144
        if (SCN_UNLIKELY(!it)) {
5091
8
            return unexpected(it.error());
5092
8
        }
5093
5094
136
        return read_string_impl(range, *it, value);
5095
144
    }
_ZN3scn2v44impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
5088
180
    {
5089
180
        auto it = read_source_impl(range, {specs});
5090
180
        if (SCN_UNLIKELY(!it)) {
5091
18
            return unexpected(it.error());
5092
18
        }
5093
5094
162
        return read_string_impl(range, *it, value);
5095
180
    }
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v44impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
5088
144
    {
5089
144
        auto it = read_source_impl(range, {specs});
5090
144
        if (SCN_UNLIKELY(!it)) {
5091
8
            return unexpected(it.error());
5092
8
        }
5093
5094
136
        return read_string_impl(range, *it, value);
5095
144
    }
_ZN3scn2v44impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
5088
180
    {
5089
180
        auto it = read_source_impl(range, {specs});
5090
180
        if (SCN_UNLIKELY(!it)) {
5091
18
            return unexpected(it.error());
5092
18
        }
5093
5094
162
        return read_string_impl(range, *it, value);
5095
180
    }
5096
5097
    template <typename Range, typename ValueCharT>
5098
    auto read(Range range,
5099
              const detail::format_specs& specs,
5100
              std::basic_string_view<ValueCharT>& value)
5101
        -> scan_expected<ranges::const_iterator_t<Range>>
5102
1.47k
    {
5103
1.47k
        auto it = read_source_impl(range, {specs});
5104
1.47k
        if (SCN_UNLIKELY(!it)) {
5105
386
            return unexpected(it.error());
5106
386
        }
5107
5108
1.08k
        return read_string_view_impl(range, *it, value);
5109
1.47k
    }
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
_ZN3scn2v44impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Line
Count
Source
5102
274
    {
5103
274
        auto it = read_source_impl(range, {specs});
5104
274
        if (SCN_UNLIKELY(!it)) {
5105
8
            return unexpected(it.error());
5106
8
        }
5107
5108
266
        return read_string_view_impl(range, *it, value);
5109
274
    }
_ZN3scn2v44impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Line
Count
Source
5102
872
    {
5103
872
        auto it = read_source_impl(range, {specs});
5104
872
        if (SCN_UNLIKELY(!it)) {
5105
352
            return unexpected(it.error());
5106
352
        }
5107
5108
520
        return read_string_view_impl(range, *it, value);
5109
872
    }
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v44impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
_ZN3scn2v44impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Line
Count
Source
5102
144
    {
5103
144
        auto it = read_source_impl(range, {specs});
5104
144
        if (SCN_UNLIKELY(!it)) {
5105
8
            return unexpected(it.error());
5106
8
        }
5107
5108
136
        return read_string_view_impl(range, *it, value);
5109
144
    }
_ZN3scn2v44impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Line
Count
Source
5102
180
    {
5103
180
        auto it = read_source_impl(range, {specs});
5104
180
        if (SCN_UNLIKELY(!it)) {
5105
18
            return unexpected(it.error());
5106
18
        }
5107
5108
162
        return read_string_view_impl(range, *it, value);
5109
180
    }
5110
5111
private:
5112
    struct specs_helper {
5113
4.41k
        constexpr specs_helper(const detail::format_specs& s) : specs(s) {}
scn::v4::impl::character_set_reader_impl<char>::specs_helper::specs_helper(scn::v4::detail::format_specs const&)
Line
Count
Source
5113
3.43k
        constexpr specs_helper(const detail::format_specs& s) : specs(s) {}
scn::v4::impl::character_set_reader_impl<wchar_t>::specs_helper::specs_helper(scn::v4::detail::format_specs const&)
Line
Count
Source
5113
972
        constexpr specs_helper(const detail::format_specs& s) : specs(s) {}
5114
5115
        constexpr bool is_char_set_in_literals(char ch) const
5116
297k
        {
5117
297k
            SCN_EXPECT(is_ascii_char(ch));
5118
297k
            const auto val =
5119
297k
                static_cast<unsigned>(static_cast<unsigned char>(ch));
5120
297k
            return (static_cast<unsigned>(specs.charset_literals[val / 8]) >>
5121
297k
                    (val % 8)) &
5122
297k
                   1u;
5123
297k
        }
scn::v4::impl::character_set_reader_impl<char>::specs_helper::is_char_set_in_literals(char) const
Line
Count
Source
5116
287k
        {
5117
287k
            SCN_EXPECT(is_ascii_char(ch));
5118
287k
            const auto val =
5119
287k
                static_cast<unsigned>(static_cast<unsigned char>(ch));
5120
287k
            return (static_cast<unsigned>(specs.charset_literals[val / 8]) >>
5121
287k
                    (val % 8)) &
5122
287k
                   1u;
5123
287k
        }
scn::v4::impl::character_set_reader_impl<wchar_t>::specs_helper::is_char_set_in_literals(char) const
Line
Count
Source
5116
10.0k
        {
5117
10.0k
            SCN_EXPECT(is_ascii_char(ch));
5118
10.0k
            const auto val =
5119
10.0k
                static_cast<unsigned>(static_cast<unsigned char>(ch));
5120
10.0k
            return (static_cast<unsigned>(specs.charset_literals[val / 8]) >>
5121
10.0k
                    (val % 8)) &
5122
10.0k
                   1u;
5123
10.0k
        }
5124
5125
        bool is_char_set_in_extra_literals(char32_t cp) const
5126
50.9k
        {
5127
            // TODO: binary search?
5128
50.9k
            if (nonascii.extra_ranges.empty()) {
5129
0
                return false;
5130
0
            }
5131
5132
50.9k
            const auto cp_val = static_cast<uint32_t>(cp);
5133
50.9k
            return std::find_if(
5134
50.9k
                       nonascii.extra_ranges.begin(),
5135
50.9k
                       nonascii.extra_ranges.end(),
5136
7.28M
                       [cp_val](const auto& pair) noexcept {
5137
7.28M
                           return static_cast<uint32_t>(pair.first) <= cp_val &&
5138
7.28M
                                  static_cast<uint32_t>(pair.second) > cp_val;
5139
7.28M
                       }) != nonascii.extra_ranges.end();
auto scn::v4::impl::character_set_reader_impl<char>::specs_helper::is_char_set_in_extra_literals(char32_t) const::{lambda(auto:1 const&)#1}::operator()<std::__1::pair<char32_t, char32_t> >(std::__1::pair<char32_t, char32_t> const&) const
Line
Count
Source
5136
7.27M
                       [cp_val](const auto& pair) noexcept {
5137
7.27M
                           return static_cast<uint32_t>(pair.first) <= cp_val &&
5138
7.27M
                                  static_cast<uint32_t>(pair.second) > cp_val;
5139
7.27M
                       }) != nonascii.extra_ranges.end();
auto scn::v4::impl::character_set_reader_impl<wchar_t>::specs_helper::is_char_set_in_extra_literals(char32_t) const::{lambda(auto:1 const&)#1}::operator()<std::__1::pair<char32_t, char32_t> >(std::__1::pair<char32_t, char32_t> const&) const
Line
Count
Source
5136
13.9k
                       [cp_val](const auto& pair) noexcept {
5137
13.9k
                           return static_cast<uint32_t>(pair.first) <= cp_val &&
5138
13.9k
                                  static_cast<uint32_t>(pair.second) > cp_val;
5139
13.9k
                       }) != nonascii.extra_ranges.end();
5140
50.9k
        }
scn::v4::impl::character_set_reader_impl<char>::specs_helper::is_char_set_in_extra_literals(char32_t) const
Line
Count
Source
5126
48.8k
        {
5127
            // TODO: binary search?
5128
48.8k
            if (nonascii.extra_ranges.empty()) {
5129
0
                return false;
5130
0
            }
5131
5132
48.8k
            const auto cp_val = static_cast<uint32_t>(cp);
5133
48.8k
            return std::find_if(
5134
48.8k
                       nonascii.extra_ranges.begin(),
5135
48.8k
                       nonascii.extra_ranges.end(),
5136
48.8k
                       [cp_val](const auto& pair) noexcept {
5137
48.8k
                           return static_cast<uint32_t>(pair.first) <= cp_val &&
5138
48.8k
                                  static_cast<uint32_t>(pair.second) > cp_val;
5139
48.8k
                       }) != nonascii.extra_ranges.end();
5140
48.8k
        }
scn::v4::impl::character_set_reader_impl<wchar_t>::specs_helper::is_char_set_in_extra_literals(char32_t) const
Line
Count
Source
5126
2.08k
        {
5127
            // TODO: binary search?
5128
2.08k
            if (nonascii.extra_ranges.empty()) {
5129
0
                return false;
5130
0
            }
5131
5132
2.08k
            const auto cp_val = static_cast<uint32_t>(cp);
5133
2.08k
            return std::find_if(
5134
2.08k
                       nonascii.extra_ranges.begin(),
5135
2.08k
                       nonascii.extra_ranges.end(),
5136
2.08k
                       [cp_val](const auto& pair) noexcept {
5137
2.08k
                           return static_cast<uint32_t>(pair.first) <= cp_val &&
5138
2.08k
                                  static_cast<uint32_t>(pair.second) > cp_val;
5139
2.08k
                       }) != nonascii.extra_ranges.end();
5140
2.08k
        }
5141
5142
        scan_expected<void> handle_nonascii()
5143
4.41k
        {
5144
4.41k
            if (!specs.charset_has_nonascii) {
5145
894
                return {};
5146
894
            }
5147
5148
3.51k
            auto charset_string = specs.charset_string<SourceCharT>();
5149
3.51k
            auto it = detail::to_address(charset_string.begin());
5150
3.51k
            auto set = detail::parse_presentation_set(
5151
3.51k
                it, detail::to_address(charset_string.end()), nonascii);
5152
3.51k
            SCN_TRY_DISCARD(nonascii.get_error());
5153
3.51k
            SCN_ENSURE(it == detail::to_address(charset_string.end()));
5154
3.51k
            SCN_ENSURE(set == charset_string);
5155
5156
3.51k
            std::sort(nonascii.extra_ranges.begin(),
5157
3.51k
                      nonascii.extra_ranges.end());
5158
3.51k
            return {};
5159
3.51k
        }
scn::v4::impl::character_set_reader_impl<char>::specs_helper::handle_nonascii()
Line
Count
Source
5143
3.43k
        {
5144
3.43k
            if (!specs.charset_has_nonascii) {
5145
582
                return {};
5146
582
            }
5147
5148
2.85k
            auto charset_string = specs.charset_string<SourceCharT>();
5149
2.85k
            auto it = detail::to_address(charset_string.begin());
5150
2.85k
            auto set = detail::parse_presentation_set(
5151
2.85k
                it, detail::to_address(charset_string.end()), nonascii);
5152
2.85k
            SCN_TRY_DISCARD(nonascii.get_error());
5153
2.85k
            SCN_ENSURE(it == detail::to_address(charset_string.end()));
5154
2.85k
            SCN_ENSURE(set == charset_string);
5155
5156
2.85k
            std::sort(nonascii.extra_ranges.begin(),
5157
2.85k
                      nonascii.extra_ranges.end());
5158
2.85k
            return {};
5159
2.85k
        }
scn::v4::impl::character_set_reader_impl<wchar_t>::specs_helper::handle_nonascii()
Line
Count
Source
5143
972
        {
5144
972
            if (!specs.charset_has_nonascii) {
5145
312
                return {};
5146
312
            }
5147
5148
660
            auto charset_string = specs.charset_string<SourceCharT>();
5149
660
            auto it = detail::to_address(charset_string.begin());
5150
660
            auto set = detail::parse_presentation_set(
5151
660
                it, detail::to_address(charset_string.end()), nonascii);
5152
660
            SCN_TRY_DISCARD(nonascii.get_error());
5153
660
            SCN_ENSURE(it == detail::to_address(charset_string.end()));
5154
660
            SCN_ENSURE(set == charset_string);
5155
5156
660
            std::sort(nonascii.extra_ranges.begin(),
5157
660
                      nonascii.extra_ranges.end());
5158
660
            return {};
5159
660
        }
5160
5161
        const detail::format_specs& specs;
5162
        nonascii_specs_handler nonascii;
5163
    };
5164
5165
    struct read_source_callback {
5166
        SCN_NODISCARD bool on_ascii_only(SourceCharT ch) const
5167
13.7k
        {
5168
13.7k
            if (!is_ascii_char(ch)) {
5169
1.99k
                return false;
5170
1.99k
            }
5171
5172
11.7k
            return helper.is_char_set_in_literals(static_cast<char>(ch));
5173
13.7k
        }
scn::v4::impl::character_set_reader_impl<char>::read_source_callback::on_ascii_only(char) const
Line
Count
Source
5167
10.2k
        {
5168
10.2k
            if (!is_ascii_char(ch)) {
5169
1.89k
                return false;
5170
1.89k
            }
5171
5172
8.34k
            return helper.is_char_set_in_literals(static_cast<char>(ch));
5173
10.2k
        }
scn::v4::impl::character_set_reader_impl<wchar_t>::read_source_callback::on_ascii_only(wchar_t) const
Line
Count
Source
5167
3.50k
        {
5168
3.50k
            if (!is_ascii_char(ch)) {
5169
102
                return false;
5170
102
            }
5171
5172
3.40k
            return helper.is_char_set_in_literals(static_cast<char>(ch));
5173
3.50k
        }
5174
5175
        SCN_NODISCARD bool on_classic_with_extra_ranges(char32_t cp) const
5176
337k
        {
5177
337k
            if (!is_ascii_char(cp)) {
5178
50.9k
                return helper.is_char_set_in_extra_literals(cp);
5179
50.9k
            }
5180
5181
286k
            return helper.is_char_set_in_literals(static_cast<char>(cp));
5182
337k
        }
scn::v4::impl::character_set_reader_impl<char>::read_source_callback::on_classic_with_extra_ranges(char32_t) const
Line
Count
Source
5176
328k
        {
5177
328k
            if (!is_ascii_char(cp)) {
5178
48.8k
                return helper.is_char_set_in_extra_literals(cp);
5179
48.8k
            }
5180
5181
279k
            return helper.is_char_set_in_literals(static_cast<char>(cp));
5182
328k
        }
scn::v4::impl::character_set_reader_impl<wchar_t>::read_source_callback::on_classic_with_extra_ranges(char32_t) const
Line
Count
Source
5176
8.73k
        {
5177
8.73k
            if (!is_ascii_char(cp)) {
5178
2.08k
                return helper.is_char_set_in_extra_literals(cp);
5179
2.08k
            }
5180
5181
6.64k
            return helper.is_char_set_in_literals(static_cast<char>(cp));
5182
8.73k
        }
5183
5184
        const specs_helper& helper;
5185
        detail::locale_ref loc{};
5186
    };
5187
5188
    template <typename Range>
5189
    auto read_source_impl(Range range, specs_helper helper) const
5190
        -> scan_expected<ranges::const_iterator_t<Range>>
5191
4.41k
    {
5192
4.41k
        const bool is_inverted = helper.specs.charset_is_inverted;
5193
4.41k
        const bool accepts_nonascii = helper.specs.charset_has_nonascii;
5194
5195
4.41k
        SCN_TRY_DISCARD(helper.handle_nonascii());
5196
5197
4.41k
        read_source_callback cb_wrapper{helper};
5198
5199
4.41k
        if (accepts_nonascii) {
5200
337k
            const auto cb = [&](char32_t cp) {
5201
337k
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5202
337k
            };
Unexecuted instantiation: _ZZNK3scn2v44impl25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS3_12specs_helperEENKUlDiE_clEDi
Unexecuted instantiation: _ZZNK3scn2v44impl25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS3_12specs_helperEENKUlDiE_clEDi
_ZZNK3scn2v44impl25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS3_12specs_helperEENKUlDiE_clEDi
Line
Count
Source
5200
12.1k
            const auto cb = [&](char32_t cp) {
5201
12.1k
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5202
12.1k
            };
_ZZNK3scn2v44impl25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS3_12specs_helperEENKUlDiE_clEDi
Line
Count
Source
5200
316k
            const auto cb = [&](char32_t cp) {
5201
316k
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5202
316k
            };
Unexecuted instantiation: _ZZNK3scn2v44impl25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS3_12specs_helperEENKUlDiE_clEDi
Unexecuted instantiation: _ZZNK3scn2v44impl25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS3_12specs_helperEENKUlDiE_clEDi
_ZZNK3scn2v44impl25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS3_12specs_helperEENKUlDiE_clEDi
Line
Count
Source
5200
4.07k
            const auto cb = [&](char32_t cp) {
5201
4.07k
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5202
4.07k
            };
_ZZNK3scn2v44impl25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS3_12specs_helperEENKUlDiE_clEDi
Line
Count
Source
5200
4.65k
            const auto cb = [&](char32_t cp) {
5201
4.65k
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5202
4.65k
            };
5203
5204
3.51k
            if (is_inverted) {
5205
774
                auto it = read_until_code_point(range, cb);
5206
774
                return check_nonempty(it, range);
5207
774
            }
5208
2.74k
            auto it = read_while_code_point(range, cb);
5209
2.74k
            return check_nonempty(it, range);
5210
3.51k
        }
5211
5212
13.7k
        const auto cb = [&](SourceCharT ch) {
5213
13.7k
            return cb_wrapper.on_ascii_only(ch);
5214
13.7k
        };
Unexecuted instantiation: _ZZNK3scn2v44impl25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS3_12specs_helperEENKUlcE_clEc
Unexecuted instantiation: _ZZNK3scn2v44impl25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS3_12specs_helperEENKUlcE_clEc
_ZZNK3scn2v44impl25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS3_12specs_helperEENKUlcE_clEc
Line
Count
Source
5212
6.94k
        const auto cb = [&](SourceCharT ch) {
5213
6.94k
            return cb_wrapper.on_ascii_only(ch);
5214
6.94k
        };
_ZZNK3scn2v44impl25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS3_12specs_helperEENKUlcE_clEc
Line
Count
Source
5212
3.28k
        const auto cb = [&](SourceCharT ch) {
5213
3.28k
            return cb_wrapper.on_ascii_only(ch);
5214
3.28k
        };
Unexecuted instantiation: _ZZNK3scn2v44impl25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS3_12specs_helperEENKUlwE_clEw
Unexecuted instantiation: _ZZNK3scn2v44impl25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS3_12specs_helperEENKUlwE_clEw
_ZZNK3scn2v44impl25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS3_12specs_helperEENKUlwE_clEw
Line
Count
Source
5212
1.63k
        const auto cb = [&](SourceCharT ch) {
5213
1.63k
            return cb_wrapper.on_ascii_only(ch);
5214
1.63k
        };
_ZZNK3scn2v44impl25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS3_12specs_helperEENKUlwE_clEw
Line
Count
Source
5212
1.87k
        const auto cb = [&](SourceCharT ch) {
5213
1.87k
            return cb_wrapper.on_ascii_only(ch);
5214
1.87k
        };
5215
5216
894
        if (is_inverted) {
5217
420
            auto it = read_until_code_unit(range, cb);
5218
420
            return check_nonempty(it, range);
5219
420
        }
5220
474
        auto it = read_while_code_unit(range, cb);
5221
474
        return check_nonempty(it, range);
5222
894
    }
Unexecuted instantiation: _ZNK3scn2v44impl25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS3_12specs_helperE
Unexecuted instantiation: _ZNK3scn2v44impl25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS3_12specs_helperE
_ZNK3scn2v44impl25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS3_12specs_helperE
Line
Count
Source
5191
822
    {
5192
822
        const bool is_inverted = helper.specs.charset_is_inverted;
5193
822
        const bool accepts_nonascii = helper.specs.charset_has_nonascii;
5194
5195
822
        SCN_TRY_DISCARD(helper.handle_nonascii());
5196
5197
822
        read_source_callback cb_wrapper{helper};
5198
5199
822
        if (accepts_nonascii) {
5200
474
            const auto cb = [&](char32_t cp) {
5201
474
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5202
474
            };
5203
5204
474
            if (is_inverted) {
5205
246
                auto it = read_until_code_point(range, cb);
5206
246
                return check_nonempty(it, range);
5207
246
            }
5208
228
            auto it = read_while_code_point(range, cb);
5209
228
            return check_nonempty(it, range);
5210
474
        }
5211
5212
348
        const auto cb = [&](SourceCharT ch) {
5213
348
            return cb_wrapper.on_ascii_only(ch);
5214
348
        };
5215
5216
348
        if (is_inverted) {
5217
174
            auto it = read_until_code_unit(range, cb);
5218
174
            return check_nonempty(it, range);
5219
174
        }
5220
174
        auto it = read_while_code_unit(range, cb);
5221
174
        return check_nonempty(it, range);
5222
348
    }
_ZNK3scn2v44impl25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS3_12specs_helperE
Line
Count
Source
5191
2.61k
    {
5192
2.61k
        const bool is_inverted = helper.specs.charset_is_inverted;
5193
2.61k
        const bool accepts_nonascii = helper.specs.charset_has_nonascii;
5194
5195
2.61k
        SCN_TRY_DISCARD(helper.handle_nonascii());
5196
5197
2.61k
        read_source_callback cb_wrapper{helper};
5198
5199
2.61k
        if (accepts_nonascii) {
5200
2.38k
            const auto cb = [&](char32_t cp) {
5201
2.38k
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5202
2.38k
            };
5203
5204
2.38k
            if (is_inverted) {
5205
210
                auto it = read_until_code_point(range, cb);
5206
210
                return check_nonempty(it, range);
5207
210
            }
5208
2.17k
            auto it = read_while_code_point(range, cb);
5209
2.17k
            return check_nonempty(it, range);
5210
2.38k
        }
5211
5212
234
        const auto cb = [&](SourceCharT ch) {
5213
234
            return cb_wrapper.on_ascii_only(ch);
5214
234
        };
5215
5216
234
        if (is_inverted) {
5217
102
            auto it = read_until_code_unit(range, cb);
5218
102
            return check_nonempty(it, range);
5219
102
        }
5220
132
        auto it = read_while_code_unit(range, cb);
5221
132
        return check_nonempty(it, range);
5222
234
    }
Unexecuted instantiation: _ZNK3scn2v44impl25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS3_12specs_helperE
Unexecuted instantiation: _ZNK3scn2v44impl25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS3_12specs_helperE
_ZNK3scn2v44impl25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS3_12specs_helperE
Line
Count
Source
5191
432
    {
5192
432
        const bool is_inverted = helper.specs.charset_is_inverted;
5193
432
        const bool accepts_nonascii = helper.specs.charset_has_nonascii;
5194
5195
432
        SCN_TRY_DISCARD(helper.handle_nonascii());
5196
5197
432
        read_source_callback cb_wrapper{helper};
5198
5199
432
        if (accepts_nonascii) {
5200
270
            const auto cb = [&](char32_t cp) {
5201
270
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5202
270
            };
5203
5204
270
            if (is_inverted) {
5205
120
                auto it = read_until_code_point(range, cb);
5206
120
                return check_nonempty(it, range);
5207
120
            }
5208
150
            auto it = read_while_code_point(range, cb);
5209
150
            return check_nonempty(it, range);
5210
270
        }
5211
5212
162
        const auto cb = [&](SourceCharT ch) {
5213
162
            return cb_wrapper.on_ascii_only(ch);
5214
162
        };
5215
5216
162
        if (is_inverted) {
5217
72
            auto it = read_until_code_unit(range, cb);
5218
72
            return check_nonempty(it, range);
5219
72
        }
5220
90
        auto it = read_while_code_unit(range, cb);
5221
90
        return check_nonempty(it, range);
5222
162
    }
_ZNK3scn2v44impl25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS3_12specs_helperE
Line
Count
Source
5191
540
    {
5192
540
        const bool is_inverted = helper.specs.charset_is_inverted;
5193
540
        const bool accepts_nonascii = helper.specs.charset_has_nonascii;
5194
5195
540
        SCN_TRY_DISCARD(helper.handle_nonascii());
5196
5197
540
        read_source_callback cb_wrapper{helper};
5198
5199
540
        if (accepts_nonascii) {
5200
390
            const auto cb = [&](char32_t cp) {
5201
390
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5202
390
            };
5203
5204
390
            if (is_inverted) {
5205
198
                auto it = read_until_code_point(range, cb);
5206
198
                return check_nonempty(it, range);
5207
198
            }
5208
192
            auto it = read_while_code_point(range, cb);
5209
192
            return check_nonempty(it, range);
5210
390
        }
5211
5212
150
        const auto cb = [&](SourceCharT ch) {
5213
150
            return cb_wrapper.on_ascii_only(ch);
5214
150
        };
5215
5216
150
        if (is_inverted) {
5217
72
            auto it = read_until_code_unit(range, cb);
5218
72
            return check_nonempty(it, range);
5219
72
        }
5220
78
        auto it = read_while_code_unit(range, cb);
5221
78
        return check_nonempty(it, range);
5222
150
    }
5223
5224
    template <typename Iterator, typename Range>
5225
    static scan_expected<Iterator> check_nonempty(const Iterator& it,
5226
                                                  Range range)
5227
4.41k
    {
5228
4.41k
        if (it == range.begin()) {
5229
1.15k
            return detail::unexpected_scan_error(
5230
1.15k
                scan_error::invalid_scanned_value,
5231
1.15k
                "No characters matched in [character set]");
5232
1.15k
        }
5233
5234
3.25k
        return it;
5235
4.41k
    }
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > scn::v4::impl::character_set_reader_impl<char>::check_nonempty<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::character_set_reader_impl<char>::check_nonempty<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::detail::basic_scan_buffer<char>::forward_iterator const&, scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<char>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
scn::v4::scan_expected<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> > scn::v4::impl::character_set_reader_impl<char>::check_nonempty<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >)
Line
Count
Source
5227
822
    {
5228
822
        if (it == range.begin()) {
5229
24
            return detail::unexpected_scan_error(
5230
24
                scan_error::invalid_scanned_value,
5231
24
                "No characters matched in [character set]");
5232
24
        }
5233
5234
798
        return it;
5235
822
    }
scn::v4::scan_expected<char const*> scn::v4::impl::character_set_reader_impl<char>::check_nonempty<char const*, scn::v4::ranges::detail::subrange_::subrange<char const*, char const*> >(char const* const&, scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>)
Line
Count
Source
5227
2.61k
    {
5228
2.61k
        if (it == range.begin()) {
5229
1.05k
            return detail::unexpected_scan_error(
5230
1.05k
                scan_error::invalid_scanned_value,
5231
1.05k
                "No characters matched in [character set]");
5232
1.05k
        }
5233
5234
1.56k
        return it;
5235
2.61k
    }
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > scn::v4::impl::character_set_reader_impl<wchar_t>::check_nonempty<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> const&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::character_set_reader_impl<wchar_t>::check_nonempty<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t> >(scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator const&, scn::v4::ranges::detail::subrange_::subrange<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v4::ranges::default_sentinel_t>)
scn::v4::scan_expected<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> > scn::v4::impl::character_set_reader_impl<wchar_t>::check_nonempty<scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >(scn::v4::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v4::impl::take_width_view<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >)
Line
Count
Source
5227
432
    {
5228
432
        if (it == range.begin()) {
5229
24
            return detail::unexpected_scan_error(
5230
24
                scan_error::invalid_scanned_value,
5231
24
                "No characters matched in [character set]");
5232
24
        }
5233
5234
408
        return it;
5235
432
    }
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::character_set_reader_impl<wchar_t>::check_nonempty<wchar_t const*, scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(wchar_t const* const&, scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>)
Line
Count
Source
5227
540
    {
5228
540
        if (it == range.begin()) {
5229
54
            return detail::unexpected_scan_error(
5230
54
                scan_error::invalid_scanned_value,
5231
54
                "No characters matched in [character set]");
5232
54
        }
5233
5234
486
        return it;
5235
540
    }
5236
};
5237
5238
template <typename SourceCharT>
5239
class string_reader
5240
    : public reader_base<string_reader<SourceCharT>, SourceCharT> {
5241
public:
5242
13.8k
    constexpr string_reader() = default;
scn::v4::impl::string_reader<char>::string_reader()
Line
Count
Source
5242
8.99k
    constexpr string_reader() = default;
scn::v4::impl::string_reader<wchar_t>::string_reader()
Line
Count
Source
5242
4.87k
    constexpr string_reader() = default;
5243
5244
    void check_specs_impl(const detail::format_specs& specs,
5245
                          reader_error_handler& eh)
5246
10.5k
    {
5247
10.5k
        detail::check_string_type_specs(specs, eh);
5248
5249
10.5k
        SCN_GCC_PUSH
5250
10.5k
        SCN_GCC_IGNORE("-Wswitch")
5251
10.5k
        SCN_GCC_IGNORE("-Wswitch-default")
5252
5253
10.5k
        SCN_CLANG_PUSH
5254
10.5k
        SCN_CLANG_IGNORE("-Wswitch")
5255
10.5k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5256
5257
10.5k
        switch (specs.type) {
5258
3.24k
            case detail::presentation_type::none:
5259
3.24k
                m_type = reader_type::word;
5260
3.24k
                break;
5261
5262
942
            case detail::presentation_type::string: {
5263
942
                if (specs.align == detail::align_type::left ||
5264
942
                    specs.align == detail::align_type::center) {
5265
612
                    m_type = reader_type::custom_word;
5266
612
                }
5267
330
                else {
5268
330
                    m_type = reader_type::word;
5269
330
                }
5270
942
                break;
5271
0
            }
5272
5273
276
            case detail::presentation_type::character:
5274
276
                m_type = reader_type::character;
5275
276
                break;
5276
5277
4.41k
            case detail::presentation_type::string_set:
5278
4.41k
                m_type = reader_type::character_set;
5279
4.41k
                break;
5280
5281
102
            case detail::presentation_type::regex:
5282
102
                m_type = reader_type::regex;
5283
102
                break;
5284
5285
504
            case detail::presentation_type::regex_escaped:
5286
504
                m_type = reader_type::regex_escaped;
5287
504
                break;
5288
10.5k
        }
5289
5290
        SCN_CLANG_POP    // -Wswitch-enum, -Wcovered-switch-default
5291
            SCN_GCC_POP  // -Wswitch-enum, -Wswitch-default
5292
10.5k
    }
scn::v4::impl::string_reader<char>::check_specs_impl(scn::v4::detail::format_specs const&, scn::v4::impl::reader_error_handler&)
Line
Count
Source
5246
7.12k
    {
5247
7.12k
        detail::check_string_type_specs(specs, eh);
5248
5249
7.12k
        SCN_GCC_PUSH
5250
7.12k
        SCN_GCC_IGNORE("-Wswitch")
5251
7.12k
        SCN_GCC_IGNORE("-Wswitch-default")
5252
5253
7.12k
        SCN_CLANG_PUSH
5254
7.12k
        SCN_CLANG_IGNORE("-Wswitch")
5255
7.12k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5256
5257
7.12k
        switch (specs.type) {
5258
1.75k
            case detail::presentation_type::none:
5259
1.75k
                m_type = reader_type::word;
5260
1.75k
                break;
5261
5262
708
            case detail::presentation_type::string: {
5263
708
                if (specs.align == detail::align_type::left ||
5264
708
                    specs.align == detail::align_type::center) {
5265
450
                    m_type = reader_type::custom_word;
5266
450
                }
5267
258
                else {
5268
258
                    m_type = reader_type::word;
5269
258
                }
5270
708
                break;
5271
0
            }
5272
5273
180
            case detail::presentation_type::character:
5274
180
                m_type = reader_type::character;
5275
180
                break;
5276
5277
3.44k
            case detail::presentation_type::string_set:
5278
3.44k
                m_type = reader_type::character_set;
5279
3.44k
                break;
5280
5281
102
            case detail::presentation_type::regex:
5282
102
                m_type = reader_type::regex;
5283
102
                break;
5284
5285
504
            case detail::presentation_type::regex_escaped:
5286
504
                m_type = reader_type::regex_escaped;
5287
504
                break;
5288
7.12k
        }
5289
5290
        SCN_CLANG_POP    // -Wswitch-enum, -Wcovered-switch-default
5291
            SCN_GCC_POP  // -Wswitch-enum, -Wswitch-default
5292
7.12k
    }
scn::v4::impl::string_reader<wchar_t>::check_specs_impl(scn::v4::detail::format_specs const&, scn::v4::impl::reader_error_handler&)
Line
Count
Source
5246
3.44k
    {
5247
3.44k
        detail::check_string_type_specs(specs, eh);
5248
5249
3.44k
        SCN_GCC_PUSH
5250
3.44k
        SCN_GCC_IGNORE("-Wswitch")
5251
3.44k
        SCN_GCC_IGNORE("-Wswitch-default")
5252
5253
3.44k
        SCN_CLANG_PUSH
5254
3.44k
        SCN_CLANG_IGNORE("-Wswitch")
5255
3.44k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5256
5257
3.44k
        switch (specs.type) {
5258
1.48k
            case detail::presentation_type::none:
5259
1.48k
                m_type = reader_type::word;
5260
1.48k
                break;
5261
5262
234
            case detail::presentation_type::string: {
5263
234
                if (specs.align == detail::align_type::left ||
5264
234
                    specs.align == detail::align_type::center) {
5265
162
                    m_type = reader_type::custom_word;
5266
162
                }
5267
72
                else {
5268
72
                    m_type = reader_type::word;
5269
72
                }
5270
234
                break;
5271
0
            }
5272
5273
96
            case detail::presentation_type::character:
5274
96
                m_type = reader_type::character;
5275
96
                break;
5276
5277
972
            case detail::presentation_type::string_set:
5278
972
                m_type = reader_type::character_set;
5279
972
                break;
5280
5281
0
            case detail::presentation_type::regex:
5282
0
                m_type = reader_type::regex;
5283
0
                break;
5284
5285
0
            case detail::presentation_type::regex_escaped:
5286
0
                m_type = reader_type::regex_escaped;
5287
0
                break;
5288
3.44k
        }
5289
5290
        SCN_CLANG_POP    // -Wswitch-enum, -Wcovered-switch-default
5291
            SCN_GCC_POP  // -Wswitch-enum, -Wswitch-default
5292
3.44k
    }
5293
5294
    bool skip_ws_before_read() const
5295
16.9k
    {
5296
16.9k
        return m_type == reader_type::word;
5297
16.9k
    }
scn::v4::impl::string_reader<char>::skip_ws_before_read() const
Line
Count
Source
5295
11.3k
    {
5296
11.3k
        return m_type == reader_type::word;
5297
11.3k
    }
scn::v4::impl::string_reader<wchar_t>::skip_ws_before_read() const
Line
Count
Source
5295
5.57k
    {
5296
5.57k
        return m_type == reader_type::word;
5297
5.57k
    }
5298
5299
    template <typename Range, typename Value>
5300
    auto read_default(Range range, Value& value, detail::locale_ref loc)
5301
        -> scan_expected<ranges::const_iterator_t<Range>>
5302
3.30k
    {
5303
3.30k
        SCN_UNUSED(loc);
5304
3.30k
        return word_reader_impl<SourceCharT>{}.read(range, value);
5305
3.30k
    }
_ZN3scn2v44impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refE
Line
Count
Source
5302
624
    {
5303
624
        SCN_UNUSED(loc);
5304
624
        return word_reader_impl<SourceCharT>{}.read(range, value);
5305
624
    }
_ZN3scn2v44impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__112basic_stringIcNSC_11char_traitsIcEENSC_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RT0_NS0_6detail10locale_refE
Line
Count
Source
5302
624
    {
5303
624
        SCN_UNUSED(loc);
5304
624
        return word_reader_impl<SourceCharT>{}.read(range, value);
5305
624
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refE
_ZN3scn2v44impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__112basic_stringIwNSC_11char_traitsIwEENSC_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RT0_NS0_6detail10locale_refE
Line
Count
Source
5302
624
    {
5303
624
        SCN_UNUSED(loc);
5304
624
        return word_reader_impl<SourceCharT>{}.read(range, value);
5305
624
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIcNSF_11char_traitsIcEENSF_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIwNSF_11char_traitsIwEENSF_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refE
_ZN3scn2v44impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__112basic_stringIcNSC_11char_traitsIcEENSC_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RT0_NS0_6detail10locale_refE
Line
Count
Source
5302
476
    {
5303
476
        SCN_UNUSED(loc);
5304
476
        return word_reader_impl<SourceCharT>{}.read(range, value);
5305
476
    }
_ZN3scn2v44impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refE
Line
Count
Source
5302
476
    {
5303
476
        SCN_UNUSED(loc);
5304
476
        return word_reader_impl<SourceCharT>{}.read(range, value);
5305
476
    }
_ZN3scn2v44impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__112basic_stringIwNSC_11char_traitsIwEENSC_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RT0_NS0_6detail10locale_refE
Line
Count
Source
5302
476
    {
5303
476
        SCN_UNUSED(loc);
5304
476
        return word_reader_impl<SourceCharT>{}.read(range, value);
5305
476
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIcNSF_11char_traitsIcEENSF_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIwNSF_11char_traitsIwEENSF_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RT0_NS9_10locale_refE
5306
5307
    template <typename Range, typename Value>
5308
    auto read_specs(Range range,
5309
                    const detail::format_specs& specs,
5310
                    Value& value,
5311
                    detail::locale_ref loc)
5312
        -> scan_expected<ranges::const_iterator_t<Range>>
5313
9.32k
    {
5314
9.32k
        SCN_UNUSED(loc);
5315
9.32k
        return read_impl(range, specs, value);
5316
9.32k
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIcNSH_11char_traitsIcEENSH_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIcNSF_11char_traitsIcEENSF_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__112basic_stringIcNSE_11char_traitsIcEENSE_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_NST_10locale_refE
Line
Count
Source
5313
806
    {
5314
806
        SCN_UNUSED(loc);
5315
806
        return read_impl(range, specs, value);
5316
806
    }
_ZN3scn2v44impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__112basic_stringIcNSC_11char_traitsIcEENSC_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Line
Count
Source
5313
1.38k
    {
5314
1.38k
        SCN_UNUSED(loc);
5315
1.38k
        return read_impl(range, specs, value);
5316
1.38k
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIwNSH_11char_traitsIwEENSH_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIwNSF_11char_traitsIwEENSF_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__112basic_stringIwNSE_11char_traitsIwEENSE_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_NST_10locale_refE
Line
Count
Source
5313
806
    {
5314
806
        SCN_UNUSED(loc);
5315
806
        return read_impl(range, specs, value);
5316
806
    }
_ZN3scn2v44impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__112basic_stringIwNSC_11char_traitsIwEENSC_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Line
Count
Source
5313
1.38k
    {
5314
1.38k
        SCN_UNUSED(loc);
5315
1.38k
        return read_impl(range, specs, value);
5316
1.38k
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIcNSH_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__117basic_string_viewIcNSE_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Line
Count
Source
5313
806
    {
5314
806
        SCN_UNUSED(loc);
5315
806
        return read_impl(range, specs, value);
5316
806
    }
_ZN3scn2v44impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refE
Line
Count
Source
5313
1.38k
    {
5314
1.38k
        SCN_UNUSED(loc);
5315
1.38k
        return read_impl(range, specs, value);
5316
1.38k
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIwNSH_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__117basic_string_viewIwNSE_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIcNSH_11char_traitsIcEENSH_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIcNSF_11char_traitsIcEENSF_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__112basic_stringIcNSE_11char_traitsIcEENSE_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_NST_10locale_refE
Line
Count
Source
5313
344
    {
5314
344
        SCN_UNUSED(loc);
5315
344
        return read_impl(range, specs, value);
5316
344
    }
_ZN3scn2v44impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__112basic_stringIcNSC_11char_traitsIcEENSC_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Line
Count
Source
5313
572
    {
5314
572
        SCN_UNUSED(loc);
5315
572
        return read_impl(range, specs, value);
5316
572
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIwNSH_11char_traitsIwEENSH_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIwNSF_11char_traitsIwEENSF_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__112basic_stringIwNSE_11char_traitsIwEENSE_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_NST_10locale_refE
Line
Count
Source
5313
344
    {
5314
344
        SCN_UNUSED(loc);
5315
344
        return read_impl(range, specs, value);
5316
344
    }
_ZN3scn2v44impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__112basic_stringIwNSC_11char_traitsIwEENSC_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Line
Count
Source
5313
572
    {
5314
572
        SCN_UNUSED(loc);
5315
572
        return read_impl(range, specs, value);
5316
572
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIcNSH_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__117basic_string_viewIcNSE_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIwNSH_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v44impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__117basic_string_viewIwNSE_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Line
Count
Source
5313
344
    {
5314
344
        SCN_UNUSED(loc);
5315
344
        return read_impl(range, specs, value);
5316
344
    }
_ZN3scn2v44impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refE
Line
Count
Source
5313
572
    {
5314
572
        SCN_UNUSED(loc);
5315
572
        return read_impl(range, specs, value);
5316
572
    }
5317
5318
protected:
5319
    enum class reader_type {
5320
        word,
5321
        custom_word,
5322
        character,
5323
        character_set,
5324
        regex,
5325
        regex_escaped,
5326
    };
5327
5328
    template <typename Range, typename Value>
5329
    auto read_impl(Range range, const detail::format_specs& specs, Value& value)
5330
        -> scan_expected<ranges::const_iterator_t<Range>>
5331
9.32k
    {
5332
9.32k
        SCN_CLANG_PUSH
5333
9.32k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5334
5335
9.32k
        switch (m_type) {
5336
3.45k
            case reader_type::word:
5337
3.45k
                return word_reader_impl<SourceCharT>{}.read(range, value);
5338
5339
600
            case reader_type::custom_word:
5340
600
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5341
600
                                                                   value);
5342
5343
252
            case reader_type::character:
5344
252
                return character_reader_impl<SourceCharT>{}.read(range, value);
5345
5346
4.41k
            case reader_type::character_set:
5347
4.41k
                return character_set_reader_impl<SourceCharT>{}.read(
5348
4.41k
                    range, specs, value);
5349
5350
0
#if !SCN_DISABLE_REGEX
5351
102
            case reader_type::regex:
5352
102
                return regex_string_reader_impl<SourceCharT>{}.read(
5353
102
                    range, specs.charset_string<SourceCharT>(),
5354
102
                    specs.regexp_flags, value);
5355
5356
504
            case reader_type::regex_escaped:
5357
504
                return regex_string_reader_impl<SourceCharT>{}.read(
5358
504
                    range,
5359
504
                    get_unescaped_regex_pattern(
5360
504
                        specs.charset_string<SourceCharT>()),
5361
504
                    specs.regexp_flags, value);
5362
0
#endif
5363
5364
0
            default:
5365
0
                SCN_EXPECT(false);
5366
9.32k
                SCN_UNREACHABLE;
5367
9.32k
        }
5368
5369
9.32k
        SCN_CLANG_POP
5370
9.32k
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIcNSH_11char_traitsIcEENSH_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIcNSF_11char_traitsIcEENSF_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_
_ZN3scn2v44impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__112basic_stringIcNSE_11char_traitsIcEENSE_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5331
806
    {
5332
806
        SCN_CLANG_PUSH
5333
806
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5334
5335
806
        switch (m_type) {
5336
316
            case reader_type::word:
5337
316
                return word_reader_impl<SourceCharT>{}.read(range, value);
5338
5339
90
            case reader_type::custom_word:
5340
90
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5341
90
                                                                   value);
5342
5343
56
            case reader_type::character:
5344
56
                return character_reader_impl<SourceCharT>{}.read(range, value);
5345
5346
274
            case reader_type::character_set:
5347
274
                return character_set_reader_impl<SourceCharT>{}.read(
5348
274
                    range, specs, value);
5349
5350
0
#if !SCN_DISABLE_REGEX
5351
2
            case reader_type::regex:
5352
2
                return regex_string_reader_impl<SourceCharT>{}.read(
5353
2
                    range, specs.charset_string<SourceCharT>(),
5354
2
                    specs.regexp_flags, value);
5355
5356
68
            case reader_type::regex_escaped:
5357
68
                return regex_string_reader_impl<SourceCharT>{}.read(
5358
68
                    range,
5359
68
                    get_unescaped_regex_pattern(
5360
68
                        specs.charset_string<SourceCharT>()),
5361
68
                    specs.regexp_flags, value);
5362
0
#endif
5363
5364
0
            default:
5365
0
                SCN_EXPECT(false);
5366
806
                SCN_UNREACHABLE;
5367
806
        }
5368
5369
806
        SCN_CLANG_POP
5370
806
    }
_ZN3scn2v44impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__112basic_stringIcNSC_11char_traitsIcEENSC_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5331
1.38k
    {
5332
1.38k
        SCN_CLANG_PUSH
5333
1.38k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5334
5335
1.38k
        switch (m_type) {
5336
324
            case reader_type::word:
5337
324
                return word_reader_impl<SourceCharT>{}.read(range, value);
5338
5339
58
            case reader_type::custom_word:
5340
58
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5341
58
                                                                   value);
5342
5343
0
            case reader_type::character:
5344
0
                return character_reader_impl<SourceCharT>{}.read(range, value);
5345
5346
872
            case reader_type::character_set:
5347
872
                return character_set_reader_impl<SourceCharT>{}.read(
5348
872
                    range, specs, value);
5349
5350
0
#if !SCN_DISABLE_REGEX
5351
32
            case reader_type::regex:
5352
32
                return regex_string_reader_impl<SourceCharT>{}.read(
5353
32
                    range, specs.charset_string<SourceCharT>(),
5354
32
                    specs.regexp_flags, value);
5355
5356
100
            case reader_type::regex_escaped:
5357
100
                return regex_string_reader_impl<SourceCharT>{}.read(
5358
100
                    range,
5359
100
                    get_unescaped_regex_pattern(
5360
100
                        specs.charset_string<SourceCharT>()),
5361
100
                    specs.regexp_flags, value);
5362
0
#endif
5363
5364
0
            default:
5365
0
                SCN_EXPECT(false);
5366
1.38k
                SCN_UNREACHABLE;
5367
1.38k
        }
5368
5369
1.38k
        SCN_CLANG_POP
5370
1.38k
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIwNSH_11char_traitsIwEENSH_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIwNSF_11char_traitsIwEENSF_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_
_ZN3scn2v44impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__112basic_stringIwNSE_11char_traitsIwEENSE_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5331
806
    {
5332
806
        SCN_CLANG_PUSH
5333
806
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5334
5335
806
        switch (m_type) {
5336
316
            case reader_type::word:
5337
316
                return word_reader_impl<SourceCharT>{}.read(range, value);
5338
5339
90
            case reader_type::custom_word:
5340
90
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5341
90
                                                                   value);
5342
5343
56
            case reader_type::character:
5344
56
                return character_reader_impl<SourceCharT>{}.read(range, value);
5345
5346
274
            case reader_type::character_set:
5347
274
                return character_set_reader_impl<SourceCharT>{}.read(
5348
274
                    range, specs, value);
5349
5350
0
#if !SCN_DISABLE_REGEX
5351
2
            case reader_type::regex:
5352
2
                return regex_string_reader_impl<SourceCharT>{}.read(
5353
2
                    range, specs.charset_string<SourceCharT>(),
5354
2
                    specs.regexp_flags, value);
5355
5356
68
            case reader_type::regex_escaped:
5357
68
                return regex_string_reader_impl<SourceCharT>{}.read(
5358
68
                    range,
5359
68
                    get_unescaped_regex_pattern(
5360
68
                        specs.charset_string<SourceCharT>()),
5361
68
                    specs.regexp_flags, value);
5362
0
#endif
5363
5364
0
            default:
5365
0
                SCN_EXPECT(false);
5366
806
                SCN_UNREACHABLE;
5367
806
        }
5368
5369
806
        SCN_CLANG_POP
5370
806
    }
_ZN3scn2v44impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__112basic_stringIwNSC_11char_traitsIwEENSC_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5331
1.38k
    {
5332
1.38k
        SCN_CLANG_PUSH
5333
1.38k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5334
5335
1.38k
        switch (m_type) {
5336
324
            case reader_type::word:
5337
324
                return word_reader_impl<SourceCharT>{}.read(range, value);
5338
5339
58
            case reader_type::custom_word:
5340
58
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5341
58
                                                                   value);
5342
5343
0
            case reader_type::character:
5344
0
                return character_reader_impl<SourceCharT>{}.read(range, value);
5345
5346
872
            case reader_type::character_set:
5347
872
                return character_set_reader_impl<SourceCharT>{}.read(
5348
872
                    range, specs, value);
5349
5350
0
#if !SCN_DISABLE_REGEX
5351
32
            case reader_type::regex:
5352
32
                return regex_string_reader_impl<SourceCharT>{}.read(
5353
32
                    range, specs.charset_string<SourceCharT>(),
5354
32
                    specs.regexp_flags, value);
5355
5356
100
            case reader_type::regex_escaped:
5357
100
                return regex_string_reader_impl<SourceCharT>{}.read(
5358
100
                    range,
5359
100
                    get_unescaped_regex_pattern(
5360
100
                        specs.charset_string<SourceCharT>()),
5361
100
                    specs.regexp_flags, value);
5362
0
#endif
5363
5364
0
            default:
5365
0
                SCN_EXPECT(false);
5366
1.38k
                SCN_UNREACHABLE;
5367
1.38k
        }
5368
5369
1.38k
        SCN_CLANG_POP
5370
1.38k
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIcNSH_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_
_ZN3scn2v44impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__117basic_string_viewIcNSE_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5331
806
    {
5332
806
        SCN_CLANG_PUSH
5333
806
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5334
5335
806
        switch (m_type) {
5336
316
            case reader_type::word:
5337
316
                return word_reader_impl<SourceCharT>{}.read(range, value);
5338
5339
90
            case reader_type::custom_word:
5340
90
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5341
90
                                                                   value);
5342
5343
56
            case reader_type::character:
5344
56
                return character_reader_impl<SourceCharT>{}.read(range, value);
5345
5346
274
            case reader_type::character_set:
5347
274
                return character_set_reader_impl<SourceCharT>{}.read(
5348
274
                    range, specs, value);
5349
5350
0
#if !SCN_DISABLE_REGEX
5351
2
            case reader_type::regex:
5352
2
                return regex_string_reader_impl<SourceCharT>{}.read(
5353
2
                    range, specs.charset_string<SourceCharT>(),
5354
2
                    specs.regexp_flags, value);
5355
5356
68
            case reader_type::regex_escaped:
5357
68
                return regex_string_reader_impl<SourceCharT>{}.read(
5358
68
                    range,
5359
68
                    get_unescaped_regex_pattern(
5360
68
                        specs.charset_string<SourceCharT>()),
5361
68
                    specs.regexp_flags, value);
5362
0
#endif
5363
5364
0
            default:
5365
0
                SCN_EXPECT(false);
5366
806
                SCN_UNREACHABLE;
5367
806
        }
5368
5369
806
        SCN_CLANG_POP
5370
806
    }
_ZN3scn2v44impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5331
1.38k
    {
5332
1.38k
        SCN_CLANG_PUSH
5333
1.38k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5334
5335
1.38k
        switch (m_type) {
5336
324
            case reader_type::word:
5337
324
                return word_reader_impl<SourceCharT>{}.read(range, value);
5338
5339
58
            case reader_type::custom_word:
5340
58
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5341
58
                                                                   value);
5342
5343
0
            case reader_type::character:
5344
0
                return character_reader_impl<SourceCharT>{}.read(range, value);
5345
5346
872
            case reader_type::character_set:
5347
872
                return character_set_reader_impl<SourceCharT>{}.read(
5348
872
                    range, specs, value);
5349
5350
0
#if !SCN_DISABLE_REGEX
5351
32
            case reader_type::regex:
5352
32
                return regex_string_reader_impl<SourceCharT>{}.read(
5353
32
                    range, specs.charset_string<SourceCharT>(),
5354
32
                    specs.regexp_flags, value);
5355
5356
100
            case reader_type::regex_escaped:
5357
100
                return regex_string_reader_impl<SourceCharT>{}.read(
5358
100
                    range,
5359
100
                    get_unescaped_regex_pattern(
5360
100
                        specs.charset_string<SourceCharT>()),
5361
100
                    specs.regexp_flags, value);
5362
0
#endif
5363
5364
0
            default:
5365
0
                SCN_EXPECT(false);
5366
1.38k
                SCN_UNREACHABLE;
5367
1.38k
        }
5368
5369
1.38k
        SCN_CLANG_POP
5370
1.38k
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIwNSH_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__117basic_string_viewIwNSE_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIcNSH_11char_traitsIcEENSH_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIcNSF_11char_traitsIcEENSF_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_
_ZN3scn2v44impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__112basic_stringIcNSE_11char_traitsIcEENSE_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5331
344
    {
5332
344
        SCN_CLANG_PUSH
5333
344
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5334
5335
344
        switch (m_type) {
5336
158
            case reader_type::word:
5337
158
                return word_reader_impl<SourceCharT>{}.read(range, value);
5338
5339
14
            case reader_type::custom_word:
5340
14
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5341
14
                                                                   value);
5342
5343
28
            case reader_type::character:
5344
28
                return character_reader_impl<SourceCharT>{}.read(range, value);
5345
5346
144
            case reader_type::character_set:
5347
144
                return character_set_reader_impl<SourceCharT>{}.read(
5348
144
                    range, specs, value);
5349
5350
0
#if !SCN_DISABLE_REGEX
5351
0
            case reader_type::regex:
5352
0
                return regex_string_reader_impl<SourceCharT>{}.read(
5353
0
                    range, specs.charset_string<SourceCharT>(),
5354
0
                    specs.regexp_flags, value);
5355
5356
0
            case reader_type::regex_escaped:
5357
0
                return regex_string_reader_impl<SourceCharT>{}.read(
5358
0
                    range,
5359
0
                    get_unescaped_regex_pattern(
5360
0
                        specs.charset_string<SourceCharT>()),
5361
0
                    specs.regexp_flags, value);
5362
0
#endif
5363
5364
0
            default:
5365
0
                SCN_EXPECT(false);
5366
344
                SCN_UNREACHABLE;
5367
344
        }
5368
5369
344
        SCN_CLANG_POP
5370
344
    }
_ZN3scn2v44impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__112basic_stringIcNSC_11char_traitsIcEENSC_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5331
572
    {
5332
572
        SCN_CLANG_PUSH
5333
572
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5334
5335
572
        switch (m_type) {
5336
354
            case reader_type::word:
5337
354
                return word_reader_impl<SourceCharT>{}.read(range, value);
5338
5339
38
            case reader_type::custom_word:
5340
38
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5341
38
                                                                   value);
5342
5343
0
            case reader_type::character:
5344
0
                return character_reader_impl<SourceCharT>{}.read(range, value);
5345
5346
180
            case reader_type::character_set:
5347
180
                return character_set_reader_impl<SourceCharT>{}.read(
5348
180
                    range, specs, value);
5349
5350
0
#if !SCN_DISABLE_REGEX
5351
0
            case reader_type::regex:
5352
0
                return regex_string_reader_impl<SourceCharT>{}.read(
5353
0
                    range, specs.charset_string<SourceCharT>(),
5354
0
                    specs.regexp_flags, value);
5355
5356
0
            case reader_type::regex_escaped:
5357
0
                return regex_string_reader_impl<SourceCharT>{}.read(
5358
0
                    range,
5359
0
                    get_unescaped_regex_pattern(
5360
0
                        specs.charset_string<SourceCharT>()),
5361
0
                    specs.regexp_flags, value);
5362
0
#endif
5363
5364
0
            default:
5365
0
                SCN_EXPECT(false);
5366
572
                SCN_UNREACHABLE;
5367
572
        }
5368
5369
572
        SCN_CLANG_POP
5370
572
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIwNSH_11char_traitsIwEENSH_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIwNSF_11char_traitsIwEENSF_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_
_ZN3scn2v44impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__112basic_stringIwNSE_11char_traitsIwEENSE_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5331
344
    {
5332
344
        SCN_CLANG_PUSH
5333
344
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5334
5335
344
        switch (m_type) {
5336
158
            case reader_type::word:
5337
158
                return word_reader_impl<SourceCharT>{}.read(range, value);
5338
5339
14
            case reader_type::custom_word:
5340
14
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5341
14
                                                                   value);
5342
5343
28
            case reader_type::character:
5344
28
                return character_reader_impl<SourceCharT>{}.read(range, value);
5345
5346
144
            case reader_type::character_set:
5347
144
                return character_set_reader_impl<SourceCharT>{}.read(
5348
144
                    range, specs, value);
5349
5350
0
#if !SCN_DISABLE_REGEX
5351
0
            case reader_type::regex:
5352
0
                return regex_string_reader_impl<SourceCharT>{}.read(
5353
0
                    range, specs.charset_string<SourceCharT>(),
5354
0
                    specs.regexp_flags, value);
5355
5356
0
            case reader_type::regex_escaped:
5357
0
                return regex_string_reader_impl<SourceCharT>{}.read(
5358
0
                    range,
5359
0
                    get_unescaped_regex_pattern(
5360
0
                        specs.charset_string<SourceCharT>()),
5361
0
                    specs.regexp_flags, value);
5362
0
#endif
5363
5364
0
            default:
5365
0
                SCN_EXPECT(false);
5366
344
                SCN_UNREACHABLE;
5367
344
        }
5368
5369
344
        SCN_CLANG_POP
5370
344
    }
_ZN3scn2v44impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__112basic_stringIwNSC_11char_traitsIwEENSC_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5331
572
    {
5332
572
        SCN_CLANG_PUSH
5333
572
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5334
5335
572
        switch (m_type) {
5336
354
            case reader_type::word:
5337
354
                return word_reader_impl<SourceCharT>{}.read(range, value);
5338
5339
38
            case reader_type::custom_word:
5340
38
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5341
38
                                                                   value);
5342
5343
0
            case reader_type::character:
5344
0
                return character_reader_impl<SourceCharT>{}.read(range, value);
5345
5346
180
            case reader_type::character_set:
5347
180
                return character_set_reader_impl<SourceCharT>{}.read(
5348
180
                    range, specs, value);
5349
5350
0
#if !SCN_DISABLE_REGEX
5351
0
            case reader_type::regex:
5352
0
                return regex_string_reader_impl<SourceCharT>{}.read(
5353
0
                    range, specs.charset_string<SourceCharT>(),
5354
0
                    specs.regexp_flags, value);
5355
5356
0
            case reader_type::regex_escaped:
5357
0
                return regex_string_reader_impl<SourceCharT>{}.read(
5358
0
                    range,
5359
0
                    get_unescaped_regex_pattern(
5360
0
                        specs.charset_string<SourceCharT>()),
5361
0
                    specs.regexp_flags, value);
5362
0
#endif
5363
5364
0
            default:
5365
0
                SCN_EXPECT(false);
5366
572
                SCN_UNREACHABLE;
5367
572
        }
5368
5369
572
        SCN_CLANG_POP
5370
572
    }
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIcNSH_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__117basic_string_viewIcNSE_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIwNSH_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v44impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_
_ZN3scn2v44impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__117basic_string_viewIwNSE_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5331
344
    {
5332
344
        SCN_CLANG_PUSH
5333
344
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5334
5335
344
        switch (m_type) {
5336
158
            case reader_type::word:
5337
158
                return word_reader_impl<SourceCharT>{}.read(range, value);
5338
5339
14
            case reader_type::custom_word:
5340
14
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5341
14
                                                                   value);
5342
5343
28
            case reader_type::character:
5344
28
                return character_reader_impl<SourceCharT>{}.read(range, value);
5345
5346
144
            case reader_type::character_set:
5347
144
                return character_set_reader_impl<SourceCharT>{}.read(
5348
144
                    range, specs, value);
5349
5350
0
#if !SCN_DISABLE_REGEX
5351
0
            case reader_type::regex:
5352
0
                return regex_string_reader_impl<SourceCharT>{}.read(
5353
0
                    range, specs.charset_string<SourceCharT>(),
5354
0
                    specs.regexp_flags, value);
5355
5356
0
            case reader_type::regex_escaped:
5357
0
                return regex_string_reader_impl<SourceCharT>{}.read(
5358
0
                    range,
5359
0
                    get_unescaped_regex_pattern(
5360
0
                        specs.charset_string<SourceCharT>()),
5361
0
                    specs.regexp_flags, value);
5362
0
#endif
5363
5364
0
            default:
5365
0
                SCN_EXPECT(false);
5366
344
                SCN_UNREACHABLE;
5367
344
        }
5368
5369
344
        SCN_CLANG_POP
5370
344
    }
_ZN3scn2v44impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5331
572
    {
5332
572
        SCN_CLANG_PUSH
5333
572
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5334
5335
572
        switch (m_type) {
5336
354
            case reader_type::word:
5337
354
                return word_reader_impl<SourceCharT>{}.read(range, value);
5338
5339
38
            case reader_type::custom_word:
5340
38
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5341
38
                                                                   value);
5342
5343
0
            case reader_type::character:
5344
0
                return character_reader_impl<SourceCharT>{}.read(range, value);
5345
5346
180
            case reader_type::character_set:
5347
180
                return character_set_reader_impl<SourceCharT>{}.read(
5348
180
                    range, specs, value);
5349
5350
0
#if !SCN_DISABLE_REGEX
5351
0
            case reader_type::regex:
5352
0
                return regex_string_reader_impl<SourceCharT>{}.read(
5353
0
                    range, specs.charset_string<SourceCharT>(),
5354
0
                    specs.regexp_flags, value);
5355
5356
0
            case reader_type::regex_escaped:
5357
0
                return regex_string_reader_impl<SourceCharT>{}.read(
5358
0
                    range,
5359
0
                    get_unescaped_regex_pattern(
5360
0
                        specs.charset_string<SourceCharT>()),
5361
0
                    specs.regexp_flags, value);
5362
0
#endif
5363
5364
0
            default:
5365
0
                SCN_EXPECT(false);
5366
572
                SCN_UNREACHABLE;
5367
572
        }
5368
5369
572
        SCN_CLANG_POP
5370
572
    }
5371
5372
    reader_type m_type{reader_type::word};
5373
};
5374
5375
template <typename SourceCharT>
5376
class reader_impl_for_string : public string_reader<SourceCharT> {};
5377
5378
/////////////////////////////////////////////////////////////////
5379
// Boolean reader
5380
/////////////////////////////////////////////////////////////////
5381
5382
struct bool_reader_base {
5383
    enum options_type { allow_text = 1, allow_numeric = 2 };
5384
5385
1.10k
    constexpr bool_reader_base() = default;
5386
1.57k
    constexpr bool_reader_base(unsigned opt) : m_options(opt) {}
5387
5388
    template <typename Range>
5389
    auto read_classic(Range range, bool& value) const
5390
        -> scan_expected<ranges::const_iterator_t<Range>>
5391
2.57k
    {
5392
2.57k
        scan_error err{scan_error::invalid_scanned_value,
5393
2.57k
                       "Failed to read boolean"};
5394
5395
2.57k
        if (m_options & allow_numeric) {
5396
2.27k
            if (auto r = read_numeric(range, value)) {
5397
52
                return *r;
5398
52
            }
5399
2.22k
            else {
5400
2.22k
                err = r.error();
5401
2.22k
            }
5402
2.27k
        }
5403
5404
2.52k
        if (m_options & allow_text) {
5405
2.41k
            if (auto r = read_textual_classic(range, value)) {
5406
0
                return *r;
5407
0
            }
5408
2.41k
            else {
5409
2.41k
                err = r.error();
5410
2.41k
            }
5411
2.41k
        }
5412
5413
2.52k
        return unexpected(err);
5414
2.52k
    }
_ZNK3scn2v44impl16bool_reader_base12read_classicINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_Rb
Line
Count
Source
5391
1.02k
    {
5392
1.02k
        scan_error err{scan_error::invalid_scanned_value,
5393
1.02k
                       "Failed to read boolean"};
5394
5395
1.02k
        if (m_options & allow_numeric) {
5396
896
            if (auto r = read_numeric(range, value)) {
5397
0
                return *r;
5398
0
            }
5399
896
            else {
5400
896
                err = r.error();
5401
896
            }
5402
896
        }
5403
5404
1.02k
        if (m_options & allow_text) {
5405
1.00k
            if (auto r = read_textual_classic(range, value)) {
5406
0
                return *r;
5407
0
            }
5408
1.00k
            else {
5409
1.00k
                err = r.error();
5410
1.00k
            }
5411
1.00k
        }
5412
5413
1.02k
        return unexpected(err);
5414
1.02k
    }
Unexecuted instantiation: _ZNK3scn2v44impl16bool_reader_base12read_classicINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_Rb
_ZNK3scn2v44impl16bool_reader_base12read_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
Line
Count
Source
5391
434
    {
5392
434
        scan_error err{scan_error::invalid_scanned_value,
5393
434
                       "Failed to read boolean"};
5394
5395
434
        if (m_options & allow_numeric) {
5396
336
            if (auto r = read_numeric(range, value)) {
5397
0
                return *r;
5398
0
            }
5399
336
            else {
5400
336
                err = r.error();
5401
336
            }
5402
336
        }
5403
5404
434
        if (m_options & allow_text) {
5405
406
            if (auto r = read_textual_classic(range, value)) {
5406
0
                return *r;
5407
0
            }
5408
406
            else {
5409
406
                err = r.error();
5410
406
            }
5411
406
        }
5412
5413
434
        return unexpected(err);
5414
434
    }
Unexecuted instantiation: _ZNK3scn2v44impl16bool_reader_base12read_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_Rb
_ZNK3scn2v44impl16bool_reader_base12read_classicINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_Rb
Line
Count
Source
5391
912
    {
5392
912
        scan_error err{scan_error::invalid_scanned_value,
5393
912
                       "Failed to read boolean"};
5394
5395
912
        if (m_options & allow_numeric) {
5396
856
            if (auto r = read_numeric(range, value)) {
5397
26
                return *r;
5398
26
            }
5399
830
            else {
5400
830
                err = r.error();
5401
830
            }
5402
856
        }
5403
5404
886
        if (m_options & allow_text) {
5405
848
            if (auto r = read_textual_classic(range, value)) {
5406
0
                return *r;
5407
0
            }
5408
848
            else {
5409
848
                err = r.error();
5410
848
            }
5411
848
        }
5412
5413
886
        return unexpected(err);
5414
886
    }
_ZNK3scn2v44impl16bool_reader_base12read_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
Line
Count
Source
5391
204
    {
5392
204
        scan_error err{scan_error::invalid_scanned_value,
5393
204
                       "Failed to read boolean"};
5394
5395
204
        if (m_options & allow_numeric) {
5396
184
            if (auto r = read_numeric(range, value)) {
5397
26
                return *r;
5398
26
            }
5399
158
            else {
5400
158
                err = r.error();
5401
158
            }
5402
184
        }
5403
5404
178
        if (m_options & allow_text) {
5405
156
            if (auto r = read_textual_classic(range, value)) {
5406
0
                return *r;
5407
0
            }
5408
156
            else {
5409
156
                err = r.error();
5410
156
            }
5411
156
        }
5412
5413
178
        return unexpected(err);
5414
178
    }
Unexecuted instantiation: _ZNK3scn2v44impl16bool_reader_base12read_classicINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_Rb
Unexecuted instantiation: _ZNK3scn2v44impl16bool_reader_base12read_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_Rb
5415
5416
protected:
5417
    template <typename Range>
5418
    auto read_numeric(Range range, bool& value) const
5419
        -> scan_expected<ranges::const_iterator_t<Range>>
5420
2.35k
    {
5421
2.35k
        if (auto r = read_matching_code_unit(range, '0')) {
5422
62
            value = false;
5423
62
            return *r;
5424
62
        }
5425
2.28k
        if (auto r = read_matching_code_unit(range, '1')) {
5426
0
            value = true;
5427
0
            return *r;
5428
0
        }
5429
5430
2.28k
        return detail::unexpected_scan_error(
5431
2.28k
            scan_error::invalid_scanned_value,
5432
2.28k
            "Failed to read numeric boolean value: No match");
5433
2.28k
    }
_ZNK3scn2v44impl16bool_reader_base12read_numericINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_Rb
Line
Count
Source
5420
908
    {
5421
908
        if (auto r = read_matching_code_unit(range, '0')) {
5422
0
            value = false;
5423
0
            return *r;
5424
0
        }
5425
908
        if (auto r = read_matching_code_unit(range, '1')) {
5426
0
            value = true;
5427
0
            return *r;
5428
0
        }
5429
5430
908
        return detail::unexpected_scan_error(
5431
908
            scan_error::invalid_scanned_value,
5432
908
            "Failed to read numeric boolean value: No match");
5433
908
    }
Unexecuted instantiation: _ZNK3scn2v44impl16bool_reader_base12read_numericINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_Rb
_ZNK3scn2v44impl16bool_reader_base12read_numericINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
Line
Count
Source
5420
352
    {
5421
352
        if (auto r = read_matching_code_unit(range, '0')) {
5422
0
            value = false;
5423
0
            return *r;
5424
0
        }
5425
352
        if (auto r = read_matching_code_unit(range, '1')) {
5426
0
            value = true;
5427
0
            return *r;
5428
0
        }
5429
5430
352
        return detail::unexpected_scan_error(
5431
352
            scan_error::invalid_scanned_value,
5432
352
            "Failed to read numeric boolean value: No match");
5433
352
    }
Unexecuted instantiation: _ZNK3scn2v44impl16bool_reader_base12read_numericINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_Rb
_ZNK3scn2v44impl16bool_reader_base12read_numericINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_Rb
Line
Count
Source
5420
882
    {
5421
882
        if (auto r = read_matching_code_unit(range, '0')) {
5422
30
            value = false;
5423
30
            return *r;
5424
30
        }
5425
852
        if (auto r = read_matching_code_unit(range, '1')) {
5426
0
            value = true;
5427
0
            return *r;
5428
0
        }
5429
5430
852
        return detail::unexpected_scan_error(
5431
852
            scan_error::invalid_scanned_value,
5432
852
            "Failed to read numeric boolean value: No match");
5433
852
    }
_ZNK3scn2v44impl16bool_reader_base12read_numericINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
Line
Count
Source
5420
208
    {
5421
208
        if (auto r = read_matching_code_unit(range, '0')) {
5422
32
            value = false;
5423
32
            return *r;
5424
32
        }
5425
176
        if (auto r = read_matching_code_unit(range, '1')) {
5426
0
            value = true;
5427
0
            return *r;
5428
0
        }
5429
5430
176
        return detail::unexpected_scan_error(
5431
176
            scan_error::invalid_scanned_value,
5432
176
            "Failed to read numeric boolean value: No match");
5433
176
    }
Unexecuted instantiation: _ZNK3scn2v44impl16bool_reader_base12read_numericINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_Rb
Unexecuted instantiation: _ZNK3scn2v44impl16bool_reader_base12read_numericINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_Rb
5434
5435
    template <typename Range>
5436
    auto read_textual_classic(Range range, bool& value) const
5437
        -> scan_expected<ranges::const_iterator_t<Range>>
5438
2.41k
    {
5439
2.41k
        if (auto r = read_matching_string_classic(range, "true")) {
5440
0
            value = true;
5441
0
            return *r;
5442
0
        }
5443
2.41k
        if (auto r = read_matching_string_classic(range, "false")) {
5444
0
            value = false;
5445
0
            return *r;
5446
0
        }
5447
5448
2.41k
        return detail::unexpected_scan_error(
5449
2.41k
            scan_error::invalid_scanned_value,
5450
2.41k
            "Failed to read textual boolean value: No match");
5451
2.41k
    }
_ZNK3scn2v44impl16bool_reader_base20read_textual_classicINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_Rb
Line
Count
Source
5438
1.00k
    {
5439
1.00k
        if (auto r = read_matching_string_classic(range, "true")) {
5440
0
            value = true;
5441
0
            return *r;
5442
0
        }
5443
1.00k
        if (auto r = read_matching_string_classic(range, "false")) {
5444
0
            value = false;
5445
0
            return *r;
5446
0
        }
5447
5448
1.00k
        return detail::unexpected_scan_error(
5449
1.00k
            scan_error::invalid_scanned_value,
5450
1.00k
            "Failed to read textual boolean value: No match");
5451
1.00k
    }
Unexecuted instantiation: _ZNK3scn2v44impl16bool_reader_base20read_textual_classicINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_Rb
_ZNK3scn2v44impl16bool_reader_base20read_textual_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
Line
Count
Source
5438
406
    {
5439
406
        if (auto r = read_matching_string_classic(range, "true")) {
5440
0
            value = true;
5441
0
            return *r;
5442
0
        }
5443
406
        if (auto r = read_matching_string_classic(range, "false")) {
5444
0
            value = false;
5445
0
            return *r;
5446
0
        }
5447
5448
406
        return detail::unexpected_scan_error(
5449
406
            scan_error::invalid_scanned_value,
5450
406
            "Failed to read textual boolean value: No match");
5451
406
    }
Unexecuted instantiation: _ZNK3scn2v44impl16bool_reader_base20read_textual_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_Rb
_ZNK3scn2v44impl16bool_reader_base20read_textual_classicINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_Rb
Line
Count
Source
5438
848
    {
5439
848
        if (auto r = read_matching_string_classic(range, "true")) {
5440
0
            value = true;
5441
0
            return *r;
5442
0
        }
5443
848
        if (auto r = read_matching_string_classic(range, "false")) {
5444
0
            value = false;
5445
0
            return *r;
5446
0
        }
5447
5448
848
        return detail::unexpected_scan_error(
5449
848
            scan_error::invalid_scanned_value,
5450
848
            "Failed to read textual boolean value: No match");
5451
848
    }
_ZNK3scn2v44impl16bool_reader_base20read_textual_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
Line
Count
Source
5438
156
    {
5439
156
        if (auto r = read_matching_string_classic(range, "true")) {
5440
0
            value = true;
5441
0
            return *r;
5442
0
        }
5443
156
        if (auto r = read_matching_string_classic(range, "false")) {
5444
0
            value = false;
5445
0
            return *r;
5446
0
        }
5447
5448
156
        return detail::unexpected_scan_error(
5449
156
            scan_error::invalid_scanned_value,
5450
156
            "Failed to read textual boolean value: No match");
5451
156
    }
Unexecuted instantiation: _ZNK3scn2v44impl16bool_reader_base20read_textual_classicINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_Rb
Unexecuted instantiation: _ZNK3scn2v44impl16bool_reader_base20read_textual_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_Rb
5452
5453
    unsigned m_options{allow_text | allow_numeric};
5454
};
5455
5456
template <typename CharT>
5457
struct bool_reader : public bool_reader_base {
5458
    using bool_reader_base::bool_reader_base;
5459
5460
#if !SCN_DISABLE_LOCALE
5461
    template <typename Range>
5462
    auto read_localized(Range range, detail::locale_ref loc, bool& value) const
5463
        -> scan_expected<ranges::const_iterator_t<Range>>
5464
92
    {
5465
92
        scan_error err{scan_error::invalid_scanned_value,
5466
92
                       "Failed to read boolean"};
5467
5468
92
        if (m_options & allow_numeric) {
5469
78
            if (auto r = read_numeric(range, value)) {
5470
10
                return *r;
5471
10
            }
5472
68
            else {
5473
68
                err = r.error();
5474
68
            }
5475
78
        }
5476
5477
82
        if (m_options & allow_text) {
5478
48
            auto stdloc = loc.get<std::locale>();
5479
48
            const auto& numpunct =
5480
48
                get_or_add_facet<std::numpunct<CharT>>(stdloc);
5481
48
            const auto truename = numpunct.truename();
5482
48
            const auto falsename = numpunct.falsename();
5483
5484
48
            if (auto r =
5485
48
                    read_textual_custom(range, value, truename, falsename)) {
5486
0
                return *r;
5487
0
            }
5488
48
            else {
5489
48
                err = r.error();
5490
48
            }
5491
48
        }
5492
5493
82
        return unexpected(err);
5494
82
    }
_ZNK3scn2v44impl11bool_readerIcE14read_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS0_6detail10locale_refERb
Line
Count
Source
5464
20
    {
5465
20
        scan_error err{scan_error::invalid_scanned_value,
5466
20
                       "Failed to read boolean"};
5467
5468
20
        if (m_options & allow_numeric) {
5469
16
            if (auto r = read_numeric(range, value)) {
5470
0
                return *r;
5471
0
            }
5472
16
            else {
5473
16
                err = r.error();
5474
16
            }
5475
16
        }
5476
5477
20
        if (m_options & allow_text) {
5478
16
            auto stdloc = loc.get<std::locale>();
5479
16
            const auto& numpunct =
5480
16
                get_or_add_facet<std::numpunct<CharT>>(stdloc);
5481
16
            const auto truename = numpunct.truename();
5482
16
            const auto falsename = numpunct.falsename();
5483
5484
16
            if (auto r =
5485
16
                    read_textual_custom(range, value, truename, falsename)) {
5486
0
                return *r;
5487
0
            }
5488
16
            else {
5489
16
                err = r.error();
5490
16
            }
5491
16
        }
5492
5493
20
        return unexpected(err);
5494
20
    }
_ZNK3scn2v44impl11bool_readerIcE14read_localizedINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS0_6detail10locale_refERb
Line
Count
Source
5464
18
    {
5465
18
        scan_error err{scan_error::invalid_scanned_value,
5466
18
                       "Failed to read boolean"};
5467
5468
18
        if (m_options & allow_numeric) {
5469
12
            if (auto r = read_numeric(range, value)) {
5470
0
                return *r;
5471
0
            }
5472
12
            else {
5473
12
                err = r.error();
5474
12
            }
5475
12
        }
5476
5477
18
        if (m_options & allow_text) {
5478
10
            auto stdloc = loc.get<std::locale>();
5479
10
            const auto& numpunct =
5480
10
                get_or_add_facet<std::numpunct<CharT>>(stdloc);
5481
10
            const auto truename = numpunct.truename();
5482
10
            const auto falsename = numpunct.falsename();
5483
5484
10
            if (auto r =
5485
10
                    read_textual_custom(range, value, truename, falsename)) {
5486
0
                return *r;
5487
0
            }
5488
10
            else {
5489
10
                err = r.error();
5490
10
            }
5491
10
        }
5492
5493
18
        return unexpected(err);
5494
18
    }
Unexecuted instantiation: _ZNK3scn2v44impl11bool_readerIcE14read_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSA_10locale_refERb
Unexecuted instantiation: _ZNK3scn2v44impl11bool_readerIcE14read_localizedINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS9_10locale_refERb
_ZNK3scn2v44impl11bool_readerIwE14read_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS0_6detail10locale_refERb
Line
Count
Source
5464
26
    {
5465
26
        scan_error err{scan_error::invalid_scanned_value,
5466
26
                       "Failed to read boolean"};
5467
5468
26
        if (m_options & allow_numeric) {
5469
24
            if (auto r = read_numeric(range, value)) {
5470
6
                return *r;
5471
6
            }
5472
18
            else {
5473
18
                err = r.error();
5474
18
            }
5475
24
        }
5476
5477
20
        if (m_options & allow_text) {
5478
10
            auto stdloc = loc.get<std::locale>();
5479
10
            const auto& numpunct =
5480
10
                get_or_add_facet<std::numpunct<CharT>>(stdloc);
5481
10
            const auto truename = numpunct.truename();
5482
10
            const auto falsename = numpunct.falsename();
5483
5484
10
            if (auto r =
5485
10
                    read_textual_custom(range, value, truename, falsename)) {
5486
0
                return *r;
5487
0
            }
5488
10
            else {
5489
10
                err = r.error();
5490
10
            }
5491
10
        }
5492
5493
20
        return unexpected(err);
5494
20
    }
_ZNK3scn2v44impl11bool_readerIwE14read_localizedINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS0_6detail10locale_refERb
Line
Count
Source
5464
28
    {
5465
28
        scan_error err{scan_error::invalid_scanned_value,
5466
28
                       "Failed to read boolean"};
5467
5468
28
        if (m_options & allow_numeric) {
5469
26
            if (auto r = read_numeric(range, value)) {
5470
4
                return *r;
5471
4
            }
5472
22
            else {
5473
22
                err = r.error();
5474
22
            }
5475
26
        }
5476
5477
24
        if (m_options & allow_text) {
5478
12
            auto stdloc = loc.get<std::locale>();
5479
12
            const auto& numpunct =
5480
12
                get_or_add_facet<std::numpunct<CharT>>(stdloc);
5481
12
            const auto truename = numpunct.truename();
5482
12
            const auto falsename = numpunct.falsename();
5483
5484
12
            if (auto r =
5485
12
                    read_textual_custom(range, value, truename, falsename)) {
5486
0
                return *r;
5487
0
            }
5488
12
            else {
5489
12
                err = r.error();
5490
12
            }
5491
12
        }
5492
5493
24
        return unexpected(err);
5494
24
    }
Unexecuted instantiation: _ZNK3scn2v44impl11bool_readerIwE14read_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSA_10locale_refERb
Unexecuted instantiation: _ZNK3scn2v44impl11bool_readerIwE14read_localizedINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS9_10locale_refERb
5495
#endif
5496
5497
protected:
5498
    template <typename Range>
5499
    auto read_textual_custom(Range range,
5500
                             bool& value,
5501
                             std::basic_string_view<CharT> truename,
5502
                             std::basic_string_view<CharT> falsename) const
5503
        -> scan_expected<ranges::const_iterator_t<Range>>
5504
48
    {
5505
48
        const auto is_truename_shorter = truename.size() <= falsename.size();
5506
48
        const auto shorter = std::pair{
5507
48
            is_truename_shorter ? truename : falsename, is_truename_shorter};
5508
48
        const auto longer = std::pair{
5509
48
            !is_truename_shorter ? truename : falsename, !is_truename_shorter};
5510
5511
48
        if (auto r = read_matching_string(range, shorter.first)) {
5512
0
            value = shorter.second;
5513
0
            return *r;
5514
0
        }
5515
48
        if (auto r = read_matching_string(range, longer.first)) {
5516
0
            value = longer.second;
5517
0
            return *r;
5518
0
        }
5519
5520
48
        return detail::unexpected_scan_error(
5521
48
            scan_error::invalid_scanned_value,
5522
48
            "Failed to read textual boolean: No match");
5523
48
    }
_ZNK3scn2v44impl11bool_readerIcE19read_textual_customINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RbNSF_17basic_string_viewIcNSF_11char_traitsIcEEEESR_
Line
Count
Source
5504
16
    {
5505
16
        const auto is_truename_shorter = truename.size() <= falsename.size();
5506
16
        const auto shorter = std::pair{
5507
16
            is_truename_shorter ? truename : falsename, is_truename_shorter};
5508
16
        const auto longer = std::pair{
5509
16
            !is_truename_shorter ? truename : falsename, !is_truename_shorter};
5510
5511
16
        if (auto r = read_matching_string(range, shorter.first)) {
5512
0
            value = shorter.second;
5513
0
            return *r;
5514
0
        }
5515
16
        if (auto r = read_matching_string(range, longer.first)) {
5516
0
            value = longer.second;
5517
0
            return *r;
5518
0
        }
5519
5520
16
        return detail::unexpected_scan_error(
5521
16
            scan_error::invalid_scanned_value,
5522
16
            "Failed to read textual boolean: No match");
5523
16
    }
_ZNK3scn2v44impl11bool_readerIcE19read_textual_customINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RbNSD_17basic_string_viewIcNSD_11char_traitsIcEEEESP_
Line
Count
Source
5504
10
    {
5505
10
        const auto is_truename_shorter = truename.size() <= falsename.size();
5506
10
        const auto shorter = std::pair{
5507
10
            is_truename_shorter ? truename : falsename, is_truename_shorter};
5508
10
        const auto longer = std::pair{
5509
10
            !is_truename_shorter ? truename : falsename, !is_truename_shorter};
5510
5511
10
        if (auto r = read_matching_string(range, shorter.first)) {
5512
0
            value = shorter.second;
5513
0
            return *r;
5514
0
        }
5515
10
        if (auto r = read_matching_string(range, longer.first)) {
5516
0
            value = longer.second;
5517
0
            return *r;
5518
0
        }
5519
5520
10
        return detail::unexpected_scan_error(
5521
10
            scan_error::invalid_scanned_value,
5522
10
            "Failed to read textual boolean: No match");
5523
10
    }
Unexecuted instantiation: _ZNK3scn2v44impl11bool_readerIcE19read_textual_customINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RbNSI_17basic_string_viewIcNSI_11char_traitsIcEEEESU_
Unexecuted instantiation: _ZNK3scn2v44impl11bool_readerIcE19read_textual_customINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RbNSG_17basic_string_viewIcNSG_11char_traitsIcEEEESS_
_ZNK3scn2v44impl11bool_readerIwE19read_textual_customINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RbNSF_17basic_string_viewIwNSF_11char_traitsIwEEEESR_
Line
Count
Source
5504
10
    {
5505
10
        const auto is_truename_shorter = truename.size() <= falsename.size();
5506
10
        const auto shorter = std::pair{
5507
10
            is_truename_shorter ? truename : falsename, is_truename_shorter};
5508
10
        const auto longer = std::pair{
5509
10
            !is_truename_shorter ? truename : falsename, !is_truename_shorter};
5510
5511
10
        if (auto r = read_matching_string(range, shorter.first)) {
5512
0
            value = shorter.second;
5513
0
            return *r;
5514
0
        }
5515
10
        if (auto r = read_matching_string(range, longer.first)) {
5516
0
            value = longer.second;
5517
0
            return *r;
5518
0
        }
5519
5520
10
        return detail::unexpected_scan_error(
5521
10
            scan_error::invalid_scanned_value,
5522
10
            "Failed to read textual boolean: No match");
5523
10
    }
_ZNK3scn2v44impl11bool_readerIwE19read_textual_customINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RbNSD_17basic_string_viewIwNSD_11char_traitsIwEEEESP_
Line
Count
Source
5504
12
    {
5505
12
        const auto is_truename_shorter = truename.size() <= falsename.size();
5506
12
        const auto shorter = std::pair{
5507
12
            is_truename_shorter ? truename : falsename, is_truename_shorter};
5508
12
        const auto longer = std::pair{
5509
12
            !is_truename_shorter ? truename : falsename, !is_truename_shorter};
5510
5511
12
        if (auto r = read_matching_string(range, shorter.first)) {
5512
0
            value = shorter.second;
5513
0
            return *r;
5514
0
        }
5515
12
        if (auto r = read_matching_string(range, longer.first)) {
5516
0
            value = longer.second;
5517
0
            return *r;
5518
0
        }
5519
5520
12
        return detail::unexpected_scan_error(
5521
12
            scan_error::invalid_scanned_value,
5522
12
            "Failed to read textual boolean: No match");
5523
12
    }
Unexecuted instantiation: _ZNK3scn2v44impl11bool_readerIwE19read_textual_customINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RbNSI_17basic_string_viewIwNSI_11char_traitsIwEEEESU_
Unexecuted instantiation: _ZNK3scn2v44impl11bool_readerIwE19read_textual_customINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RbNSG_17basic_string_viewIwNSG_11char_traitsIwEEEESS_
5524
};
5525
5526
template <typename CharT>
5527
class reader_impl_for_bool
5528
    : public reader_base<reader_impl_for_bool<CharT>, CharT> {
5529
public:
5530
    reader_impl_for_bool() = default;
5531
5532
    void check_specs_impl(const detail::format_specs& specs,
5533
                          reader_error_handler& eh)
5534
3.62k
    {
5535
3.62k
        detail::check_bool_type_specs(specs, eh);
5536
3.62k
    }
scn::v4::impl::reader_impl_for_bool<char>::check_specs_impl(scn::v4::detail::format_specs const&, scn::v4::impl::reader_error_handler&)
Line
Count
Source
5534
2.41k
    {
5535
2.41k
        detail::check_bool_type_specs(specs, eh);
5536
2.41k
    }
scn::v4::impl::reader_impl_for_bool<wchar_t>::check_specs_impl(scn::v4::detail::format_specs const&, scn::v4::impl::reader_error_handler&)
Line
Count
Source
5534
1.20k
    {
5535
1.20k
        detail::check_bool_type_specs(specs, eh);
5536
1.20k
    }
5537
5538
    template <typename Range>
5539
    auto read_default(Range range, bool& value, detail::locale_ref loc) const
5540
        -> scan_expected<ranges::const_iterator_t<Range>>
5541
1.10k
    {
5542
1.10k
        SCN_UNUSED(loc);
5543
5544
1.10k
        return bool_reader<CharT>{}.read_classic(range, value);
5545
1.10k
    }
_ZNK3scn2v44impl20reader_impl_for_boolIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RbNS0_6detail10locale_refE
Line
Count
Source
5541
624
    {
5542
624
        SCN_UNUSED(loc);
5543
5544
624
        return bool_reader<CharT>{}.read_classic(range, value);
5545
624
    }
Unexecuted instantiation: _ZNK3scn2v44impl20reader_impl_for_boolIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RbNS9_10locale_refE
_ZNK3scn2v44impl20reader_impl_for_boolIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RbNS0_6detail10locale_refE
Line
Count
Source
5541
476
    {
5542
476
        SCN_UNUSED(loc);
5543
5544
476
        return bool_reader<CharT>{}.read_classic(range, value);
5545
476
    }
Unexecuted instantiation: _ZNK3scn2v44impl20reader_impl_for_boolIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RbNS9_10locale_refE
5546
5547
    template <typename Range>
5548
    auto read_specs(Range range,
5549
                    const detail::format_specs& specs,
5550
                    bool& value,
5551
                    detail::locale_ref loc) const
5552
        -> scan_expected<ranges::const_iterator_t<Range>>
5553
1.57k
    {
5554
1.57k
        const auto rd = bool_reader<CharT>{get_options(specs)};
5555
5556
1.57k
#if !SCN_DISABLE_LOCALE
5557
1.57k
        if (specs.localized) {
5558
92
            return rd.read_localized(range, loc, value);
5559
92
        }
5560
1.47k
#endif
5561
5562
1.47k
        return rd.read_classic(range, value);
5563
1.57k
    }
_ZNK3scn2v44impl20reader_impl_for_boolIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERbNSN_10locale_refE
Line
Count
Source
5553
454
    {
5554
454
        const auto rd = bool_reader<CharT>{get_options(specs)};
5555
5556
454
#if !SCN_DISABLE_LOCALE
5557
454
        if (specs.localized) {
5558
20
            return rd.read_localized(range, loc, value);
5559
20
        }
5560
434
#endif
5561
5562
434
        return rd.read_classic(range, value);
5563
454
    }
_ZNK3scn2v44impl20reader_impl_for_boolIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERbNSL_10locale_refE
Line
Count
Source
5553
422
    {
5554
422
        const auto rd = bool_reader<CharT>{get_options(specs)};
5555
5556
422
#if !SCN_DISABLE_LOCALE
5557
422
        if (specs.localized) {
5558
18
            return rd.read_localized(range, loc, value);
5559
18
        }
5560
404
#endif
5561
5562
404
        return rd.read_classic(range, value);
5563
422
    }
Unexecuted instantiation: _ZNK3scn2v44impl20reader_impl_for_boolIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERbNSA_10locale_refE
Unexecuted instantiation: _ZNK3scn2v44impl20reader_impl_for_boolIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERbNS9_10locale_refE
_ZNK3scn2v44impl20reader_impl_for_boolIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERbNSN_10locale_refE
Line
Count
Source
5553
230
    {
5554
230
        const auto rd = bool_reader<CharT>{get_options(specs)};
5555
5556
230
#if !SCN_DISABLE_LOCALE
5557
230
        if (specs.localized) {
5558
26
            return rd.read_localized(range, loc, value);
5559
26
        }
5560
204
#endif
5561
5562
204
        return rd.read_classic(range, value);
5563
230
    }
_ZNK3scn2v44impl20reader_impl_for_boolIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERbNSL_10locale_refE
Line
Count
Source
5553
464
    {
5554
464
        const auto rd = bool_reader<CharT>{get_options(specs)};
5555
5556
464
#if !SCN_DISABLE_LOCALE
5557
464
        if (specs.localized) {
5558
28
            return rd.read_localized(range, loc, value);
5559
28
        }
5560
436
#endif
5561
5562
436
        return rd.read_classic(range, value);
5563
464
    }
Unexecuted instantiation: _ZNK3scn2v44impl20reader_impl_for_boolIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERbNSA_10locale_refE
Unexecuted instantiation: _ZNK3scn2v44impl20reader_impl_for_boolIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERbNS9_10locale_refE
5564
5565
    static constexpr unsigned get_options(const detail::format_specs& specs)
5566
1.57k
    {
5567
1.57k
        SCN_GCC_COMPAT_PUSH
5568
1.57k
        SCN_GCC_COMPAT_IGNORE("-Wswitch-enum")
5569
5570
1.57k
        switch (specs.type) {
5571
320
            case detail::presentation_type::string:
5572
320
                return bool_reader_base::allow_text;
5573
5574
38
            case detail::presentation_type::int_generic:
5575
74
            case detail::presentation_type::int_binary:
5576
92
            case detail::presentation_type::int_decimal:
5577
114
            case detail::presentation_type::int_hex:
5578
144
            case detail::presentation_type::int_octal:
5579
162
            case detail::presentation_type::int_unsigned_decimal:
5580
162
                return bool_reader_base::allow_numeric;
5581
5582
1.08k
            default:
5583
1.08k
                return bool_reader_base::allow_text |
5584
1.08k
                       bool_reader_base::allow_numeric;
5585
1.57k
        }
5586
5587
        SCN_GCC_COMPAT_POP  // -Wswitch-enum
5588
1.57k
    }
scn::v4::impl::reader_impl_for_bool<char>::get_options(scn::v4::detail::format_specs const&)
Line
Count
Source
5566
876
    {
5567
876
        SCN_GCC_COMPAT_PUSH
5568
876
        SCN_GCC_COMPAT_IGNORE("-Wswitch-enum")
5569
5570
876
        switch (specs.type) {
5571
240
            case detail::presentation_type::string:
5572
240
                return bool_reader_base::allow_text;
5573
5574
14
            case detail::presentation_type::int_generic:
5575
26
            case detail::presentation_type::int_binary:
5576
32
            case detail::presentation_type::int_decimal:
5577
42
            case detail::presentation_type::int_hex:
5578
56
            case detail::presentation_type::int_octal:
5579
62
            case detail::presentation_type::int_unsigned_decimal:
5580
62
                return bool_reader_base::allow_numeric;
5581
5582
574
            default:
5583
574
                return bool_reader_base::allow_text |
5584
574
                       bool_reader_base::allow_numeric;
5585
876
        }
5586
5587
        SCN_GCC_COMPAT_POP  // -Wswitch-enum
5588
876
    }
scn::v4::impl::reader_impl_for_bool<wchar_t>::get_options(scn::v4::detail::format_specs const&)
Line
Count
Source
5566
694
    {
5567
694
        SCN_GCC_COMPAT_PUSH
5568
694
        SCN_GCC_COMPAT_IGNORE("-Wswitch-enum")
5569
5570
694
        switch (specs.type) {
5571
80
            case detail::presentation_type::string:
5572
80
                return bool_reader_base::allow_text;
5573
5574
24
            case detail::presentation_type::int_generic:
5575
48
            case detail::presentation_type::int_binary:
5576
60
            case detail::presentation_type::int_decimal:
5577
72
            case detail::presentation_type::int_hex:
5578
88
            case detail::presentation_type::int_octal:
5579
100
            case detail::presentation_type::int_unsigned_decimal:
5580
100
                return bool_reader_base::allow_numeric;
5581
5582
514
            default:
5583
514
                return bool_reader_base::allow_text |
5584
514
                       bool_reader_base::allow_numeric;
5585
694
        }
5586
5587
        SCN_GCC_COMPAT_POP  // -Wswitch-enum
5588
694
    }
5589
};
5590
5591
/////////////////////////////////////////////////////////////////
5592
// Character (code unit, code point) reader
5593
/////////////////////////////////////////////////////////////////
5594
5595
template <typename CharT>
5596
class code_unit_reader {
5597
public:
5598
    template <typename SourceRange>
5599
    auto read(const SourceRange& range, CharT& ch)
5600
        -> scan_expected<ranges::const_iterator_t<SourceRange>>
5601
2.17k
    {
5602
2.17k
        SCN_TRY(it, read_code_unit(range).transform_error(make_eof_scan_error));
5603
2.17k
        ch = *range.begin();
5604
2.17k
        return it;
5605
2.17k
    }
Unexecuted instantiation: _ZN3scn2v44impl16code_unit_readerIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSK_Rc
Unexecuted instantiation: _ZN3scn2v44impl16code_unit_readerIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_Rc
_ZN3scn2v44impl16code_unit_readerIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSH_Rc
Line
Count
Source
5601
332
    {
5602
332
        SCN_TRY(it, read_code_unit(range).transform_error(make_eof_scan_error));
5603
332
        ch = *range.begin();
5604
332
        return it;
5605
332
    }
_ZN3scn2v44impl16code_unit_readerIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_Rc
Line
Count
Source
5601
874
    {
5602
874
        SCN_TRY(it, read_code_unit(range).transform_error(make_eof_scan_error));
5603
874
        ch = *range.begin();
5604
874
        return it;
5605
874
    }
Unexecuted instantiation: _ZN3scn2v44impl16code_unit_readerIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSK_Rw
Unexecuted instantiation: _ZN3scn2v44impl16code_unit_readerIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_Rw
_ZN3scn2v44impl16code_unit_readerIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSH_Rw
Line
Count
Source
5601
156
    {
5602
156
        SCN_TRY(it, read_code_unit(range).transform_error(make_eof_scan_error));
5603
156
        ch = *range.begin();
5604
156
        return it;
5605
156
    }
_ZN3scn2v44impl16code_unit_readerIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_Rw
Line
Count
Source
5601
812
    {
5602
812
        SCN_TRY(it, read_code_unit(range).transform_error(make_eof_scan_error));
5603
812
        ch = *range.begin();
5604
812
        return it;
5605
812
    }
5606
};
5607
5608
template <typename CharT>
5609
class code_point_reader;
5610
5611
template <>
5612
class code_point_reader<char32_t> {
5613
public:
5614
    template <typename SourceRange>
5615
    auto read(const SourceRange& range, char32_t& cp)
5616
        -> scan_expected<ranges::const_iterator_t<SourceRange>>
5617
0
    {
5618
0
        auto result = read_code_point_into(range);
5619
0
        if (SCN_UNLIKELY(!result.is_valid())) {
5620
0
            return detail::unexpected_scan_error(
5621
0
                scan_error::invalid_scanned_value, "Invalid code point");
5622
0
        }
5623
0
        cp = detail::decode_code_point_exhaustive_valid(
5624
0
            std::basic_string_view<detail::char_t<SourceRange>>{
5625
0
                result.codepoint});
5626
0
        return result.iterator;
5627
0
    }
Unexecuted instantiation: _ZN3scn2v44impl17code_point_readerIDiE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_RDi
Unexecuted instantiation: _ZN3scn2v44impl17code_point_readerIDiE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_RDi
Unexecuted instantiation: _ZN3scn2v44impl17code_point_readerIDiE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSH_RDi
Unexecuted instantiation: _ZN3scn2v44impl17code_point_readerIDiE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSK_RDi
Unexecuted instantiation: _ZN3scn2v44impl17code_point_readerIDiE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_RDi
Unexecuted instantiation: _ZN3scn2v44impl17code_point_readerIDiE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSH_RDi
Unexecuted instantiation: _ZN3scn2v44impl17code_point_readerIDiE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_RDi
Unexecuted instantiation: _ZN3scn2v44impl17code_point_readerIDiE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSK_RDi
5628
};
5629
5630
template <>
5631
class code_point_reader<wchar_t> {
5632
public:
5633
    template <typename SourceRange>
5634
    auto read(const SourceRange& range, wchar_t& ch)
5635
        -> scan_expected<ranges::const_iterator_t<SourceRange>>
5636
0
    {
5637
0
        code_point_reader<char32_t> reader{};
5638
0
        char32_t cp{};
5639
0
        auto ret = reader.read(range, cp);
5640
0
        if (SCN_UNLIKELY(!ret)) {
5641
0
            return unexpected(ret.error());
5642
0
        }
5643
5644
0
        SCN_TRY(encoded_ch, encode_code_point_as_wide_character(cp, true));
5645
0
        ch = encoded_ch;
5646
0
        return *ret;
5647
0
    }
Unexecuted instantiation: _ZN3scn2v44impl17code_point_readerIwE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_Rw
Unexecuted instantiation: _ZN3scn2v44impl17code_point_readerIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_Rw
Unexecuted instantiation: _ZN3scn2v44impl17code_point_readerIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSH_Rw
Unexecuted instantiation: _ZN3scn2v44impl17code_point_readerIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSK_Rw
5648
};
5649
5650
template <typename ValueCharT>
5651
class char_reader_base {
5652
public:
5653
    constexpr char_reader_base() = default;
5654
5655
    bool skip_ws_before_read() const
5656
3.41k
    {
5657
3.41k
        return false;
5658
3.41k
    }
scn::v4::impl::char_reader_base<char>::skip_ws_before_read() const
Line
Count
Source
5656
1.85k
    {
5657
1.85k
        return false;
5658
1.85k
    }
scn::v4::impl::char_reader_base<wchar_t>::skip_ws_before_read() const
Line
Count
Source
5656
1.56k
    {
5657
1.56k
        return false;
5658
1.56k
    }
Unexecuted instantiation: scn::v4::impl::char_reader_base<char32_t>::skip_ws_before_read() const
5659
5660
    static scan_expected<void> check_specs(const detail::format_specs& specs)
5661
3.52k
    {
5662
3.52k
        reader_error_handler eh{};
5663
3.52k
        if constexpr (std::is_same_v<ValueCharT, char32_t>) {
5664
0
            detail::check_code_point_type_specs(specs, eh);
5665
        }
5666
3.52k
        else {
5667
3.52k
            detail::check_char_type_specs(specs, eh);
5668
3.52k
        }
5669
3.52k
        if (SCN_UNLIKELY(!eh)) {
5670
2.29k
            return detail::unexpected_scan_error(
5671
2.29k
                scan_error::invalid_format_string, eh.m_msg);
5672
2.29k
        }
5673
1.22k
        return {};
5674
3.52k
    }
scn::v4::impl::char_reader_base<char>::check_specs(scn::v4::detail::format_specs const&)
Line
Count
Source
5661
2.37k
    {
5662
2.37k
        reader_error_handler eh{};
5663
        if constexpr (std::is_same_v<ValueCharT, char32_t>) {
5664
            detail::check_code_point_type_specs(specs, eh);
5665
        }
5666
2.37k
        else {
5667
2.37k
            detail::check_char_type_specs(specs, eh);
5668
2.37k
        }
5669
2.37k
        if (SCN_UNLIKELY(!eh)) {
5670
1.72k
            return detail::unexpected_scan_error(
5671
1.72k
                scan_error::invalid_format_string, eh.m_msg);
5672
1.72k
        }
5673
646
        return {};
5674
2.37k
    }
scn::v4::impl::char_reader_base<wchar_t>::check_specs(scn::v4::detail::format_specs const&)
Line
Count
Source
5661
1.14k
    {
5662
1.14k
        reader_error_handler eh{};
5663
        if constexpr (std::is_same_v<ValueCharT, char32_t>) {
5664
            detail::check_code_point_type_specs(specs, eh);
5665
        }
5666
1.14k
        else {
5667
1.14k
            detail::check_char_type_specs(specs, eh);
5668
1.14k
        }
5669
1.14k
        if (SCN_UNLIKELY(!eh)) {
5670
570
            return detail::unexpected_scan_error(
5671
570
                scan_error::invalid_format_string, eh.m_msg);
5672
570
        }
5673
578
        return {};
5674
1.14k
    }
Unexecuted instantiation: scn::v4::impl::char_reader_base<char32_t>::check_specs(scn::v4::detail::format_specs const&)
5675
};
5676
5677
template <typename CharT>
5678
class reader_impl_for_char : public char_reader_base<char> {
5679
public:
5680
    template <typename Range>
5681
    auto read_default(Range range, char& value, detail::locale_ref loc)
5682
        -> scan_expected<ranges::const_iterator_t<Range>>
5683
1.20k
    {
5684
1.20k
        SCN_UNUSED(loc);
5685
1.20k
        if constexpr (std::is_same_v<CharT, char>) {
5686
1.20k
            return code_unit_reader<char>{}.read(range, value);
5687
        }
5688
0
        else {
5689
0
            SCN_UNUSED(range);
5690
0
            SCN_EXPECT(false);
5691
0
            SCN_UNREACHABLE;
5692
0
        }
5693
1.20k
    }
Unexecuted instantiation: _ZN3scn2v44impl20reader_impl_for_charIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RcNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20reader_impl_for_charIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RcNS9_10locale_refE
_ZN3scn2v44impl20reader_impl_for_charIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RcNS0_6detail10locale_refE
Line
Count
Source
5683
332
    {
5684
332
        SCN_UNUSED(loc);
5685
332
        if constexpr (std::is_same_v<CharT, char>) {
5686
332
            return code_unit_reader<char>{}.read(range, value);
5687
        }
5688
        else {
5689
            SCN_UNUSED(range);
5690
            SCN_EXPECT(false);
5691
            SCN_UNREACHABLE;
5692
        }
5693
332
    }
_ZN3scn2v44impl20reader_impl_for_charIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RcNS0_6detail10locale_refE
Line
Count
Source
5683
874
    {
5684
874
        SCN_UNUSED(loc);
5685
874
        if constexpr (std::is_same_v<CharT, char>) {
5686
874
            return code_unit_reader<char>{}.read(range, value);
5687
        }
5688
        else {
5689
            SCN_UNUSED(range);
5690
            SCN_EXPECT(false);
5691
            SCN_UNREACHABLE;
5692
        }
5693
874
    }
Unexecuted instantiation: _ZN3scn2v44impl20reader_impl_for_charIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RcNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20reader_impl_for_charIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RcNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20reader_impl_for_charIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RcNS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20reader_impl_for_charIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RcNSA_10locale_refE
5694
5695
    template <typename Range>
5696
    auto read_specs(Range range,
5697
                    const detail::format_specs& specs,
5698
                    char& value,
5699
                    detail::locale_ref loc)
5700
        -> scan_expected<ranges::const_iterator_t<Range>>
5701
640
    {
5702
640
        if (specs.type == detail::presentation_type::none ||
5703
640
            specs.type == detail::presentation_type::character) {
5704
582
            return read_default(range, value, loc);
5705
582
        }
5706
5707
58
        reader_impl_for_int<CharT> reader{};
5708
58
        signed char tmp_value{};
5709
58
        auto ret = reader.read_specs(range, specs, tmp_value, loc);
5710
58
        value = static_cast<signed char>(value);
5711
58
        return ret;
5712
640
    }
Unexecuted instantiation: _ZN3scn2v44impl20reader_impl_for_charIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERcNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20reader_impl_for_charIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERcNS9_10locale_refE
_ZN3scn2v44impl20reader_impl_for_charIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERcNSN_10locale_refE
Line
Count
Source
5701
368
    {
5702
368
        if (specs.type == detail::presentation_type::none ||
5703
368
            specs.type == detail::presentation_type::character) {
5704
332
            return read_default(range, value, loc);
5705
332
        }
5706
5707
36
        reader_impl_for_int<CharT> reader{};
5708
36
        signed char tmp_value{};
5709
36
        auto ret = reader.read_specs(range, specs, tmp_value, loc);
5710
36
        value = static_cast<signed char>(value);
5711
36
        return ret;
5712
368
    }
_ZN3scn2v44impl20reader_impl_for_charIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERcNSL_10locale_refE
Line
Count
Source
5701
272
    {
5702
272
        if (specs.type == detail::presentation_type::none ||
5703
272
            specs.type == detail::presentation_type::character) {
5704
250
            return read_default(range, value, loc);
5705
250
        }
5706
5707
22
        reader_impl_for_int<CharT> reader{};
5708
22
        signed char tmp_value{};
5709
22
        auto ret = reader.read_specs(range, specs, tmp_value, loc);
5710
22
        value = static_cast<signed char>(value);
5711
22
        return ret;
5712
272
    }
Unexecuted instantiation: _ZN3scn2v44impl20reader_impl_for_charIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERcNSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20reader_impl_for_charIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERcNSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20reader_impl_for_charIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERcNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl20reader_impl_for_charIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERcNS9_10locale_refE
5713
};
5714
5715
template <typename CharT>
5716
class reader_impl_for_wchar : public char_reader_base<wchar_t> {
5717
public:
5718
    template <typename Range>
5719
    auto read_default(Range range, wchar_t& value, detail::locale_ref loc)
5720
        -> scan_expected<ranges::const_iterator_t<Range>>
5721
968
    {
5722
968
        SCN_UNUSED(loc);
5723
968
        if constexpr (std::is_same_v<CharT, char>) {
5724
0
            return code_point_reader<wchar_t>{}.read(range, value);
5725
        }
5726
968
        else {
5727
968
            return code_unit_reader<wchar_t>{}.read(range, value);
5728
968
        }
5729
968
    }
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_wcharIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RwNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_wcharIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RwNS9_10locale_refE
_ZN3scn2v44impl21reader_impl_for_wcharIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RwNS0_6detail10locale_refE
Line
Count
Source
5721
156
    {
5722
156
        SCN_UNUSED(loc);
5723
        if constexpr (std::is_same_v<CharT, char>) {
5724
            return code_point_reader<wchar_t>{}.read(range, value);
5725
        }
5726
156
        else {
5727
156
            return code_unit_reader<wchar_t>{}.read(range, value);
5728
156
        }
5729
156
    }
_ZN3scn2v44impl21reader_impl_for_wcharIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RwNS0_6detail10locale_refE
Line
Count
Source
5721
812
    {
5722
812
        SCN_UNUSED(loc);
5723
        if constexpr (std::is_same_v<CharT, char>) {
5724
            return code_point_reader<wchar_t>{}.read(range, value);
5725
        }
5726
812
        else {
5727
812
            return code_unit_reader<wchar_t>{}.read(range, value);
5728
812
        }
5729
812
    }
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_wcharIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RwNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_wcharIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RwNS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_wcharIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RwNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_wcharIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RwNSA_10locale_refE
5730
5731
    template <typename Range>
5732
    auto read_specs(Range range,
5733
                    const detail::format_specs& specs,
5734
                    wchar_t& value,
5735
                    detail::locale_ref loc)
5736
        -> scan_expected<ranges::const_iterator_t<Range>>
5737
576
    {
5738
576
        if (specs.type == detail::presentation_type::none ||
5739
576
            specs.type == detail::presentation_type::character) {
5740
492
            return read_default(range, value, loc);
5741
492
        }
5742
5743
84
        reader_impl_for_int<CharT> reader{};
5744
84
        using integer_type =
5745
84
            std::conditional_t<sizeof(wchar_t) == 2, int16_t, int32_t>;
5746
84
        integer_type tmp_value{};
5747
84
        auto ret = reader.read_specs(range, specs, tmp_value, loc);
5748
84
        value = static_cast<integer_type>(value);
5749
84
        return ret;
5750
576
    }
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_wcharIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERwNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_wcharIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERwNS9_10locale_refE
_ZN3scn2v44impl21reader_impl_for_wcharIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERwNSN_10locale_refE
Line
Count
Source
5737
196
    {
5738
196
        if (specs.type == detail::presentation_type::none ||
5739
196
            specs.type == detail::presentation_type::character) {
5740
156
            return read_default(range, value, loc);
5741
156
        }
5742
5743
40
        reader_impl_for_int<CharT> reader{};
5744
40
        using integer_type =
5745
40
            std::conditional_t<sizeof(wchar_t) == 2, int16_t, int32_t>;
5746
40
        integer_type tmp_value{};
5747
40
        auto ret = reader.read_specs(range, specs, tmp_value, loc);
5748
40
        value = static_cast<integer_type>(value);
5749
40
        return ret;
5750
196
    }
_ZN3scn2v44impl21reader_impl_for_wcharIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERwNSL_10locale_refE
Line
Count
Source
5737
380
    {
5738
380
        if (specs.type == detail::presentation_type::none ||
5739
380
            specs.type == detail::presentation_type::character) {
5740
336
            return read_default(range, value, loc);
5741
336
        }
5742
5743
44
        reader_impl_for_int<CharT> reader{};
5744
44
        using integer_type =
5745
44
            std::conditional_t<sizeof(wchar_t) == 2, int16_t, int32_t>;
5746
44
        integer_type tmp_value{};
5747
44
        auto ret = reader.read_specs(range, specs, tmp_value, loc);
5748
44
        value = static_cast<integer_type>(value);
5749
44
        return ret;
5750
380
    }
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_wcharIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERwNSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_wcharIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERwNSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_wcharIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERwNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl21reader_impl_for_wcharIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERwNS9_10locale_refE
5751
};
5752
5753
template <typename CharT>
5754
class reader_impl_for_code_point : public char_reader_base<char32_t> {
5755
public:
5756
    template <typename Range>
5757
    auto read_default(Range range, char32_t& value, detail::locale_ref loc)
5758
        -> scan_expected<ranges::const_iterator_t<Range>>
5759
0
    {
5760
0
        SCN_UNUSED(loc);
5761
0
        return code_point_reader<char32_t>{}.read(range, value);
5762
0
    }
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RDiNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RDiNS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RDiNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RDiNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RDiNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RDiNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RDiNS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RDiNSA_10locale_refE
5763
5764
    template <typename Range>
5765
    auto read_specs(Range range,
5766
                    const detail::format_specs& specs,
5767
                    char32_t& value,
5768
                    detail::locale_ref loc)
5769
        -> scan_expected<ranges::const_iterator_t<Range>>
5770
0
    {
5771
0
        SCN_UNUSED(specs);
5772
0
        return read_default(range, value, loc);
5773
0
    }
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERDiNSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERDiNSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERDiNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERDiNS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERDiNSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERDiNSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERDiNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl26reader_impl_for_code_pointIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERDiNS9_10locale_refE
5774
};
5775
5776
/////////////////////////////////////////////////////////////////
5777
// Pointer reader
5778
/////////////////////////////////////////////////////////////////
5779
5780
template <typename CharT>
5781
class reader_impl_for_voidptr {
5782
public:
5783
    constexpr reader_impl_for_voidptr() = default;
5784
5785
    bool skip_ws_before_read() const
5786
2.23k
    {
5787
2.23k
        return true;
5788
2.23k
    }
scn::v4::impl::reader_impl_for_voidptr<char>::skip_ws_before_read() const
Line
Count
Source
5786
1.21k
    {
5787
1.21k
        return true;
5788
1.21k
    }
scn::v4::impl::reader_impl_for_voidptr<wchar_t>::skip_ws_before_read() const
Line
Count
Source
5786
1.01k
    {
5787
1.01k
        return true;
5788
1.01k
    }
5789
5790
    static scan_expected<void> check_specs(const detail::format_specs& specs)
5791
3.52k
    {
5792
3.52k
        reader_error_handler eh{};
5793
3.52k
        detail::check_pointer_type_specs(specs, eh);
5794
3.52k
        if (SCN_UNLIKELY(!eh)) {
5795
2.42k
            return detail::unexpected_scan_error(
5796
2.42k
                scan_error::invalid_format_string, eh.m_msg);
5797
2.42k
        }
5798
1.09k
        return {};
5799
3.52k
    }
scn::v4::impl::reader_impl_for_voidptr<char>::check_specs(scn::v4::detail::format_specs const&)
Line
Count
Source
5791
2.37k
    {
5792
2.37k
        reader_error_handler eh{};
5793
2.37k
        detail::check_pointer_type_specs(specs, eh);
5794
2.37k
        if (SCN_UNLIKELY(!eh)) {
5795
1.78k
            return detail::unexpected_scan_error(
5796
1.78k
                scan_error::invalid_format_string, eh.m_msg);
5797
1.78k
        }
5798
592
        return {};
5799
2.37k
    }
scn::v4::impl::reader_impl_for_voidptr<wchar_t>::check_specs(scn::v4::detail::format_specs const&)
Line
Count
Source
5791
1.14k
    {
5792
1.14k
        reader_error_handler eh{};
5793
1.14k
        detail::check_pointer_type_specs(specs, eh);
5794
1.14k
        if (SCN_UNLIKELY(!eh)) {
5795
646
            return detail::unexpected_scan_error(
5796
646
                scan_error::invalid_format_string, eh.m_msg);
5797
646
        }
5798
502
        return {};
5799
1.14k
    }
5800
5801
    template <typename Range>
5802
    auto read_default(Range range, void*& value, detail::locale_ref loc)
5803
        -> scan_expected<ranges::const_iterator_t<Range>>
5804
2.16k
    {
5805
2.16k
        detail::format_specs specs{};
5806
2.16k
        specs.type = detail::presentation_type::int_hex;
5807
5808
2.16k
        std::uintptr_t intvalue{};
5809
2.16k
        SCN_TRY(result, reader_impl_for_int<CharT>{}.read_specs(range, specs,
5810
38
                                                                intvalue, loc));
5811
38
        value = reinterpret_cast<void*>(intvalue);
5812
38
        return result;
5813
2.16k
    }
_ZN3scn2v44impl23reader_impl_for_voidptrIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RPvNS0_6detail10locale_refE
Line
Count
Source
5804
878
    {
5805
878
        detail::format_specs specs{};
5806
878
        specs.type = detail::presentation_type::int_hex;
5807
5808
878
        std::uintptr_t intvalue{};
5809
878
        SCN_TRY(result, reader_impl_for_int<CharT>{}.read_specs(range, specs,
5810
0
                                                                intvalue, loc));
5811
0
        value = reinterpret_cast<void*>(intvalue);
5812
0
        return result;
5813
878
    }
Unexecuted instantiation: _ZN3scn2v44impl23reader_impl_for_voidptrIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RPvNS9_10locale_refE
_ZN3scn2v44impl23reader_impl_for_voidptrIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RPvNS0_6detail10locale_refE
Line
Count
Source
5804
310
    {
5805
310
        detail::format_specs specs{};
5806
310
        specs.type = detail::presentation_type::int_hex;
5807
5808
310
        std::uintptr_t intvalue{};
5809
310
        SCN_TRY(result, reader_impl_for_int<CharT>{}.read_specs(range, specs,
5810
0
                                                                intvalue, loc));
5811
0
        value = reinterpret_cast<void*>(intvalue);
5812
0
        return result;
5813
310
    }
Unexecuted instantiation: _ZN3scn2v44impl23reader_impl_for_voidptrIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RPvNSA_10locale_refE
_ZN3scn2v44impl23reader_impl_for_voidptrIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RPvNS0_6detail10locale_refE
Line
Count
Source
5804
816
    {
5805
816
        detail::format_specs specs{};
5806
816
        specs.type = detail::presentation_type::int_hex;
5807
5808
816
        std::uintptr_t intvalue{};
5809
816
        SCN_TRY(result, reader_impl_for_int<CharT>{}.read_specs(range, specs,
5810
22
                                                                intvalue, loc));
5811
22
        value = reinterpret_cast<void*>(intvalue);
5812
22
        return result;
5813
816
    }
_ZN3scn2v44impl23reader_impl_for_voidptrIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RPvNS0_6detail10locale_refE
Line
Count
Source
5804
156
    {
5805
156
        detail::format_specs specs{};
5806
156
        specs.type = detail::presentation_type::int_hex;
5807
5808
156
        std::uintptr_t intvalue{};
5809
156
        SCN_TRY(result, reader_impl_for_int<CharT>{}.read_specs(range, specs,
5810
16
                                                                intvalue, loc));
5811
16
        value = reinterpret_cast<void*>(intvalue);
5812
16
        return result;
5813
156
    }
Unexecuted instantiation: _ZN3scn2v44impl23reader_impl_for_voidptrIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RPvNS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl23reader_impl_for_voidptrIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RPvNSA_10locale_refE
5814
5815
    template <typename Range>
5816
    auto read_specs(Range range,
5817
                    const detail::format_specs& specs,
5818
                    void*& value,
5819
                    detail::locale_ref loc)
5820
        -> scan_expected<ranges::const_iterator_t<Range>>
5821
1.06k
    {
5822
1.06k
        SCN_UNUSED(specs);
5823
1.06k
        return read_default(range, value, loc);
5824
1.06k
    }
_ZN3scn2v44impl23reader_impl_for_voidptrIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERPvNSN_10locale_refE
Line
Count
Source
5821
310
    {
5822
310
        SCN_UNUSED(specs);
5823
310
        return read_default(range, value, loc);
5824
310
    }
_ZN3scn2v44impl23reader_impl_for_voidptrIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERPvNSL_10locale_refE
Line
Count
Source
5821
254
    {
5822
254
        SCN_UNUSED(specs);
5823
254
        return read_default(range, value, loc);
5824
254
    }
Unexecuted instantiation: _ZN3scn2v44impl23reader_impl_for_voidptrIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERPvNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl23reader_impl_for_voidptrIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERPvNS9_10locale_refE
_ZN3scn2v44impl23reader_impl_for_voidptrIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERPvNSN_10locale_refE
Line
Count
Source
5821
156
    {
5822
156
        SCN_UNUSED(specs);
5823
156
        return read_default(range, value, loc);
5824
156
    }
_ZN3scn2v44impl23reader_impl_for_voidptrIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERPvNSL_10locale_refE
Line
Count
Source
5821
340
    {
5822
340
        SCN_UNUSED(specs);
5823
340
        return read_default(range, value, loc);
5824
340
    }
Unexecuted instantiation: _ZN3scn2v44impl23reader_impl_for_voidptrIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERPvNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v44impl23reader_impl_for_voidptrIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERPvNS9_10locale_refE
5825
};
5826
5827
/////////////////////////////////////////////////////////////////
5828
// Argument readers
5829
/////////////////////////////////////////////////////////////////
5830
5831
template <typename Range>
5832
auto skip_ws_before_if_required(bool is_required, Range range)
5833
    -> eof_expected<ranges::iterator_t<Range>>
5834
9.90k
{
5835
9.90k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
5836
0
        return unexpected(e);
5837
0
    }
5838
5839
9.90k
    if (!is_required) {
5840
1.10k
        return range.begin();
5841
1.10k
    }
5842
5843
8.80k
    return skip_classic_whitespace(range);
5844
9.90k
}
_ZN3scn2v44impl26skip_ws_before_if_requiredINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEEEEbSB_
Line
Count
Source
5834
5.61k
{
5835
5.61k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
5836
0
        return unexpected(e);
5837
0
    }
5838
5839
5.61k
    if (!is_required) {
5840
624
        return range.begin();
5841
624
    }
5842
5843
4.99k
    return skip_classic_whitespace(range);
5844
5.61k
}
Unexecuted instantiation: _ZN3scn2v44impl26skip_ws_before_if_requiredINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEEEEbSE_
Unexecuted instantiation: _ZN3scn2v44impl26skip_ws_before_if_requiredINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEEEEbSA_
_ZN3scn2v44impl26skip_ws_before_if_requiredINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEEEEbSB_
Line
Count
Source
5834
4.28k
{
5835
4.28k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
5836
0
        return unexpected(e);
5837
0
    }
5838
5839
4.28k
    if (!is_required) {
5840
476
        return range.begin();
5841
476
    }
5842
5843
3.80k
    return skip_classic_whitespace(range);
5844
4.28k
}
Unexecuted instantiation: _ZN3scn2v44impl26skip_ws_before_if_requiredINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEEEEbSE_
Unexecuted instantiation: _ZN3scn2v44impl26skip_ws_before_if_requiredINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEEEEbSA_
5845
5846
template <typename T, typename CharT>
5847
constexpr auto make_reader()
5848
13.8k
{
5849
    if constexpr (std::is_same_v<T, bool>) {
5850
        return reader_impl_for_bool<CharT>{};
5851
    }
5852
    else if constexpr (std::is_same_v<T, char>) {
5853
        return reader_impl_for_char<CharT>{};
5854
    }
5855
    else if constexpr (std::is_same_v<T, wchar_t>) {
5856
        return reader_impl_for_wchar<CharT>{};
5857
    }
5858
    else if constexpr (std::is_same_v<T, char32_t>) {
5859
        return reader_impl_for_code_point<CharT>{};
5860
    }
5861
    else if constexpr (std::is_same_v<T, std::string_view> ||
5862
4.62k
                       std::is_same_v<T, std::wstring_view>) {
5863
4.62k
        return reader_impl_for_string<CharT>{};
5864
    }
5865
    else if constexpr (std::is_same_v<T, std::string> ||
5866
9.24k
                       std::is_same_v<T, std::wstring>) {
5867
9.24k
        return reader_impl_for_string<CharT>{};
5868
    }
5869
    else if constexpr (std::is_same_v<T, regex_matches> ||
5870
                       std::is_same_v<T, wregex_matches>) {
5871
        return reader_impl_for_regex_matches<CharT>{};
5872
    }
5873
    else if constexpr (std::is_same_v<T, void*>) {
5874
        return reader_impl_for_voidptr<CharT>{};
5875
    }
5876
    else if constexpr (std::is_floating_point_v<T>) {
5877
        return reader_impl_for_float<CharT>{};
5878
    }
5879
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5880
                       !std::is_same_v<T, wchar_t> &&
5881
                       !std::is_same_v<T, char32_t> &&
5882
                       !std::is_same_v<T, bool>) {
5883
        return reader_impl_for_int<CharT>{};
5884
    }
5885
    else {
5886
        return reader_impl_for_monostate<CharT>{};
5887
    }
5888
13.8k
}
auto scn::v4::impl::make_reader<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, char>()
Line
Count
Source
5848
2.99k
{
5849
    if constexpr (std::is_same_v<T, bool>) {
5850
        return reader_impl_for_bool<CharT>{};
5851
    }
5852
    else if constexpr (std::is_same_v<T, char>) {
5853
        return reader_impl_for_char<CharT>{};
5854
    }
5855
    else if constexpr (std::is_same_v<T, wchar_t>) {
5856
        return reader_impl_for_wchar<CharT>{};
5857
    }
5858
    else if constexpr (std::is_same_v<T, char32_t>) {
5859
        return reader_impl_for_code_point<CharT>{};
5860
    }
5861
    else if constexpr (std::is_same_v<T, std::string_view> ||
5862
                       std::is_same_v<T, std::wstring_view>) {
5863
        return reader_impl_for_string<CharT>{};
5864
    }
5865
    else if constexpr (std::is_same_v<T, std::string> ||
5866
2.99k
                       std::is_same_v<T, std::wstring>) {
5867
2.99k
        return reader_impl_for_string<CharT>{};
5868
    }
5869
    else if constexpr (std::is_same_v<T, regex_matches> ||
5870
                       std::is_same_v<T, wregex_matches>) {
5871
        return reader_impl_for_regex_matches<CharT>{};
5872
    }
5873
    else if constexpr (std::is_same_v<T, void*>) {
5874
        return reader_impl_for_voidptr<CharT>{};
5875
    }
5876
    else if constexpr (std::is_floating_point_v<T>) {
5877
        return reader_impl_for_float<CharT>{};
5878
    }
5879
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5880
                       !std::is_same_v<T, wchar_t> &&
5881
                       !std::is_same_v<T, char32_t> &&
5882
                       !std::is_same_v<T, bool>) {
5883
        return reader_impl_for_int<CharT>{};
5884
    }
5885
    else {
5886
        return reader_impl_for_monostate<CharT>{};
5887
    }
5888
2.99k
}
auto scn::v4::impl::make_reader<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, char>()
Line
Count
Source
5848
2.99k
{
5849
    if constexpr (std::is_same_v<T, bool>) {
5850
        return reader_impl_for_bool<CharT>{};
5851
    }
5852
    else if constexpr (std::is_same_v<T, char>) {
5853
        return reader_impl_for_char<CharT>{};
5854
    }
5855
    else if constexpr (std::is_same_v<T, wchar_t>) {
5856
        return reader_impl_for_wchar<CharT>{};
5857
    }
5858
    else if constexpr (std::is_same_v<T, char32_t>) {
5859
        return reader_impl_for_code_point<CharT>{};
5860
    }
5861
    else if constexpr (std::is_same_v<T, std::string_view> ||
5862
                       std::is_same_v<T, std::wstring_view>) {
5863
        return reader_impl_for_string<CharT>{};
5864
    }
5865
    else if constexpr (std::is_same_v<T, std::string> ||
5866
2.99k
                       std::is_same_v<T, std::wstring>) {
5867
2.99k
        return reader_impl_for_string<CharT>{};
5868
    }
5869
    else if constexpr (std::is_same_v<T, regex_matches> ||
5870
                       std::is_same_v<T, wregex_matches>) {
5871
        return reader_impl_for_regex_matches<CharT>{};
5872
    }
5873
    else if constexpr (std::is_same_v<T, void*>) {
5874
        return reader_impl_for_voidptr<CharT>{};
5875
    }
5876
    else if constexpr (std::is_floating_point_v<T>) {
5877
        return reader_impl_for_float<CharT>{};
5878
    }
5879
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5880
                       !std::is_same_v<T, wchar_t> &&
5881
                       !std::is_same_v<T, char32_t> &&
5882
                       !std::is_same_v<T, bool>) {
5883
        return reader_impl_for_int<CharT>{};
5884
    }
5885
    else {
5886
        return reader_impl_for_monostate<CharT>{};
5887
    }
5888
2.99k
}
auto scn::v4::impl::make_reader<std::__1::basic_string_view<char, std::__1::char_traits<char> >, char>()
Line
Count
Source
5848
2.99k
{
5849
    if constexpr (std::is_same_v<T, bool>) {
5850
        return reader_impl_for_bool<CharT>{};
5851
    }
5852
    else if constexpr (std::is_same_v<T, char>) {
5853
        return reader_impl_for_char<CharT>{};
5854
    }
5855
    else if constexpr (std::is_same_v<T, wchar_t>) {
5856
        return reader_impl_for_wchar<CharT>{};
5857
    }
5858
    else if constexpr (std::is_same_v<T, char32_t>) {
5859
        return reader_impl_for_code_point<CharT>{};
5860
    }
5861
    else if constexpr (std::is_same_v<T, std::string_view> ||
5862
2.99k
                       std::is_same_v<T, std::wstring_view>) {
5863
2.99k
        return reader_impl_for_string<CharT>{};
5864
    }
5865
    else if constexpr (std::is_same_v<T, std::string> ||
5866
                       std::is_same_v<T, std::wstring>) {
5867
        return reader_impl_for_string<CharT>{};
5868
    }
5869
    else if constexpr (std::is_same_v<T, regex_matches> ||
5870
                       std::is_same_v<T, wregex_matches>) {
5871
        return reader_impl_for_regex_matches<CharT>{};
5872
    }
5873
    else if constexpr (std::is_same_v<T, void*>) {
5874
        return reader_impl_for_voidptr<CharT>{};
5875
    }
5876
    else if constexpr (std::is_floating_point_v<T>) {
5877
        return reader_impl_for_float<CharT>{};
5878
    }
5879
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5880
                       !std::is_same_v<T, wchar_t> &&
5881
                       !std::is_same_v<T, char32_t> &&
5882
                       !std::is_same_v<T, bool>) {
5883
        return reader_impl_for_int<CharT>{};
5884
    }
5885
    else {
5886
        return reader_impl_for_monostate<CharT>{};
5887
    }
5888
2.99k
}
Unexecuted instantiation: auto scn::v4::impl::make_reader<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, char>()
auto scn::v4::impl::make_reader<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, wchar_t>()
Line
Count
Source
5848
1.62k
{
5849
    if constexpr (std::is_same_v<T, bool>) {
5850
        return reader_impl_for_bool<CharT>{};
5851
    }
5852
    else if constexpr (std::is_same_v<T, char>) {
5853
        return reader_impl_for_char<CharT>{};
5854
    }
5855
    else if constexpr (std::is_same_v<T, wchar_t>) {
5856
        return reader_impl_for_wchar<CharT>{};
5857
    }
5858
    else if constexpr (std::is_same_v<T, char32_t>) {
5859
        return reader_impl_for_code_point<CharT>{};
5860
    }
5861
    else if constexpr (std::is_same_v<T, std::string_view> ||
5862
                       std::is_same_v<T, std::wstring_view>) {
5863
        return reader_impl_for_string<CharT>{};
5864
    }
5865
    else if constexpr (std::is_same_v<T, std::string> ||
5866
1.62k
                       std::is_same_v<T, std::wstring>) {
5867
1.62k
        return reader_impl_for_string<CharT>{};
5868
    }
5869
    else if constexpr (std::is_same_v<T, regex_matches> ||
5870
                       std::is_same_v<T, wregex_matches>) {
5871
        return reader_impl_for_regex_matches<CharT>{};
5872
    }
5873
    else if constexpr (std::is_same_v<T, void*>) {
5874
        return reader_impl_for_voidptr<CharT>{};
5875
    }
5876
    else if constexpr (std::is_floating_point_v<T>) {
5877
        return reader_impl_for_float<CharT>{};
5878
    }
5879
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5880
                       !std::is_same_v<T, wchar_t> &&
5881
                       !std::is_same_v<T, char32_t> &&
5882
                       !std::is_same_v<T, bool>) {
5883
        return reader_impl_for_int<CharT>{};
5884
    }
5885
    else {
5886
        return reader_impl_for_monostate<CharT>{};
5887
    }
5888
1.62k
}
auto scn::v4::impl::make_reader<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, wchar_t>()
Line
Count
Source
5848
1.62k
{
5849
    if constexpr (std::is_same_v<T, bool>) {
5850
        return reader_impl_for_bool<CharT>{};
5851
    }
5852
    else if constexpr (std::is_same_v<T, char>) {
5853
        return reader_impl_for_char<CharT>{};
5854
    }
5855
    else if constexpr (std::is_same_v<T, wchar_t>) {
5856
        return reader_impl_for_wchar<CharT>{};
5857
    }
5858
    else if constexpr (std::is_same_v<T, char32_t>) {
5859
        return reader_impl_for_code_point<CharT>{};
5860
    }
5861
    else if constexpr (std::is_same_v<T, std::string_view> ||
5862
                       std::is_same_v<T, std::wstring_view>) {
5863
        return reader_impl_for_string<CharT>{};
5864
    }
5865
    else if constexpr (std::is_same_v<T, std::string> ||
5866
1.62k
                       std::is_same_v<T, std::wstring>) {
5867
1.62k
        return reader_impl_for_string<CharT>{};
5868
    }
5869
    else if constexpr (std::is_same_v<T, regex_matches> ||
5870
                       std::is_same_v<T, wregex_matches>) {
5871
        return reader_impl_for_regex_matches<CharT>{};
5872
    }
5873
    else if constexpr (std::is_same_v<T, void*>) {
5874
        return reader_impl_for_voidptr<CharT>{};
5875
    }
5876
    else if constexpr (std::is_floating_point_v<T>) {
5877
        return reader_impl_for_float<CharT>{};
5878
    }
5879
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5880
                       !std::is_same_v<T, wchar_t> &&
5881
                       !std::is_same_v<T, char32_t> &&
5882
                       !std::is_same_v<T, bool>) {
5883
        return reader_impl_for_int<CharT>{};
5884
    }
5885
    else {
5886
        return reader_impl_for_monostate<CharT>{};
5887
    }
5888
1.62k
}
Unexecuted instantiation: auto scn::v4::impl::make_reader<std::__1::basic_string_view<char, std::__1::char_traits<char> >, wchar_t>()
auto scn::v4::impl::make_reader<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, wchar_t>()
Line
Count
Source
5848
1.62k
{
5849
    if constexpr (std::is_same_v<T, bool>) {
5850
        return reader_impl_for_bool<CharT>{};
5851
    }
5852
    else if constexpr (std::is_same_v<T, char>) {
5853
        return reader_impl_for_char<CharT>{};
5854
    }
5855
    else if constexpr (std::is_same_v<T, wchar_t>) {
5856
        return reader_impl_for_wchar<CharT>{};
5857
    }
5858
    else if constexpr (std::is_same_v<T, char32_t>) {
5859
        return reader_impl_for_code_point<CharT>{};
5860
    }
5861
    else if constexpr (std::is_same_v<T, std::string_view> ||
5862
1.62k
                       std::is_same_v<T, std::wstring_view>) {
5863
1.62k
        return reader_impl_for_string<CharT>{};
5864
    }
5865
    else if constexpr (std::is_same_v<T, std::string> ||
5866
                       std::is_same_v<T, std::wstring>) {
5867
        return reader_impl_for_string<CharT>{};
5868
    }
5869
    else if constexpr (std::is_same_v<T, regex_matches> ||
5870
                       std::is_same_v<T, wregex_matches>) {
5871
        return reader_impl_for_regex_matches<CharT>{};
5872
    }
5873
    else if constexpr (std::is_same_v<T, void*>) {
5874
        return reader_impl_for_voidptr<CharT>{};
5875
    }
5876
    else if constexpr (std::is_floating_point_v<T>) {
5877
        return reader_impl_for_float<CharT>{};
5878
    }
5879
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5880
                       !std::is_same_v<T, wchar_t> &&
5881
                       !std::is_same_v<T, char32_t> &&
5882
                       !std::is_same_v<T, bool>) {
5883
        return reader_impl_for_int<CharT>{};
5884
    }
5885
    else {
5886
        return reader_impl_for_monostate<CharT>{};
5887
    }
5888
1.62k
}
Unexecuted instantiation: auto scn::v4::impl::make_reader<char, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<signed char, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<short, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<int, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<long, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<long long, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<unsigned char, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<unsigned short, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<unsigned int, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<unsigned long, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<unsigned long long, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<float, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<double, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<long double, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<scn::v4::basic_regex_matches<char>, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<scn::v4::basic_regex_matches<wchar_t>, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<wchar_t, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<signed char, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<short, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<int, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<long, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<long long, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<unsigned char, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<unsigned short, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<unsigned int, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<unsigned long, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<unsigned long long, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<float, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<double, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<long double, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<scn::v4::basic_regex_matches<char>, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<scn::v4::basic_regex_matches<wchar_t>, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<void*, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<bool, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<wchar_t, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<char32_t, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<scn::v4::monostate, char>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<void*, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<bool, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<char, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<char32_t, wchar_t>()
Unexecuted instantiation: auto scn::v4::impl::make_reader<scn::v4::monostate, wchar_t>()
5889
5890
template <typename Context>
5891
struct default_arg_reader {
5892
    using context_type = Context;
5893
    using char_type = typename context_type::char_type;
5894
    using args_type = basic_scan_args<detail::default_context<char_type>>;
5895
5896
    using range_type = typename context_type::range_type;
5897
    using iterator = ranges::iterator_t<range_type>;
5898
5899
    template <typename Reader, typename Range, typename T>
5900
    auto impl(Reader& rd, Range rng, T& value)
5901
        -> scan_expected<ranges::iterator_t<Range>>
5902
9.90k
    {
5903
9.90k
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
9.90k
                        .transform_error(make_eof_scan_error));
5905
9.90k
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
9.90k
    }
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_aEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_sEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_iEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5902
624
    {
5903
624
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
624
                        .transform_error(make_eof_scan_error));
5905
624
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
624
    }
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_lEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_xEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_hEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_tEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_jEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5902
624
    {
5903
624
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
624
                        .transform_error(make_eof_scan_error));
5905
624
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
624
    }
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_mEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_yEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_23reader_impl_for_voidptrIcEESA_PvEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Line
Count
Source
5902
624
    {
5903
624
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
624
                        .transform_error(make_eof_scan_error));
5905
624
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
624
    }
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_20reader_impl_for_boolIcEESA_bEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5902
624
    {
5903
624
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
624
                        .transform_error(make_eof_scan_error));
5905
624
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
624
    }
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_20reader_impl_for_charIcEESA_cEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5902
624
    {
5903
624
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
624
                        .transform_error(make_eof_scan_error));
5905
624
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
624
    }
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_21reader_impl_for_wcharIcEESA_wEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_26reader_impl_for_code_pointIcEESA_DiEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_21reader_impl_for_floatIcEESA_fEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_21reader_impl_for_floatIcEESA_dEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5902
624
    {
5903
624
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
624
                        .transform_error(make_eof_scan_error));
5905
624
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
624
    }
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_21reader_impl_for_floatIcEESA_eEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_22reader_impl_for_stringIcEESA_NSt3__117basic_string_viewIcNSG_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Line
Count
Source
5902
624
    {
5903
624
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
624
                        .transform_error(make_eof_scan_error));
5905
624
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
624
    }
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_22reader_impl_for_stringIcEESA_NSt3__112basic_stringIcNSG_11char_traitsIcEENSG_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
5902
624
    {
5903
624
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
624
                        .transform_error(make_eof_scan_error));
5905
624
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
624
    }
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_22reader_impl_for_stringIcEESA_NSt3__117basic_string_viewIwNSG_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_22reader_impl_for_stringIcEESA_NSt3__112basic_stringIwNSG_11char_traitsIwEENSG_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
5902
624
    {
5903
624
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
624
                        .transform_error(make_eof_scan_error));
5905
624
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
624
    }
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_29reader_impl_for_regex_matchesIcEESA_NS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_29reader_impl_for_regex_matchesIcEESA_NS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_25reader_impl_for_monostateIcEESA_NS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEaEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEsEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEElEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEExEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEhEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEtEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEjEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEmEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEyEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_23reader_impl_for_voidptrIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEPvEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_23reader_impl_for_voidptrIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEPvEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_20reader_impl_for_boolIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEbEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_20reader_impl_for_boolIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEbEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_20reader_impl_for_charIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_20reader_impl_for_charIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEcEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_wcharIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_wcharIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEwEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_26reader_impl_for_code_pointIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEDiEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_26reader_impl_for_code_pointIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEDiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_floatIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEfEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_floatIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEdEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_floatIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEeEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENSt3__117basic_string_viewIcNSK_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SQ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEESF_EENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENSt3__112basic_stringIcNSK_11char_traitsIcEENSK_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SS_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEENSB_12basic_stringIcSE_NSB_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENSt3__117basic_string_viewIwNSK_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SQ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEENSC_IwNSD_IwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENSt3__112basic_stringIwNSK_11char_traitsIwEENSK_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SS_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEENSB_12basic_stringIwNSD_IwEENSB_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SN_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_29reader_impl_for_regex_matchesIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SN_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_29reader_impl_for_regex_matchesIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_29reader_impl_for_regex_matchesIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SN_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_29reader_impl_for_regex_matchesIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_25reader_impl_for_monostateIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_25reader_impl_for_monostateIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_aEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_sEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_iEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5902
476
    {
5903
476
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
476
                        .transform_error(make_eof_scan_error));
5905
476
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
476
    }
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_lEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_xEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_hEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_tEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_jEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5902
476
    {
5903
476
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
476
                        .transform_error(make_eof_scan_error));
5905
476
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
476
    }
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_mEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_yEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_23reader_impl_for_voidptrIwEESA_PvEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Line
Count
Source
5902
476
    {
5903
476
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
476
                        .transform_error(make_eof_scan_error));
5905
476
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
476
    }
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_20reader_impl_for_boolIwEESA_bEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5902
476
    {
5903
476
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
476
                        .transform_error(make_eof_scan_error));
5905
476
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
476
    }
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_20reader_impl_for_charIwEESA_cEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_21reader_impl_for_wcharIwEESA_wEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5902
476
    {
5903
476
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
476
                        .transform_error(make_eof_scan_error));
5905
476
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
476
    }
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_26reader_impl_for_code_pointIwEESA_DiEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_21reader_impl_for_floatIwEESA_fEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_21reader_impl_for_floatIwEESA_dEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5902
476
    {
5903
476
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
476
                        .transform_error(make_eof_scan_error));
5905
476
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
476
    }
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_21reader_impl_for_floatIwEESA_eEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_22reader_impl_for_stringIwEESA_NSt3__117basic_string_viewIcNSG_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_22reader_impl_for_stringIwEESA_NSt3__112basic_stringIcNSG_11char_traitsIcEENSG_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
5902
476
    {
5903
476
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
476
                        .transform_error(make_eof_scan_error));
5905
476
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
476
    }
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_22reader_impl_for_stringIwEESA_NSt3__117basic_string_viewIwNSG_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Line
Count
Source
5902
476
    {
5903
476
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
476
                        .transform_error(make_eof_scan_error));
5905
476
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
476
    }
_ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_22reader_impl_for_stringIwEESA_NSt3__112basic_stringIwNSG_11char_traitsIwEENSG_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
5902
476
    {
5903
476
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5904
476
                        .transform_error(make_eof_scan_error));
5905
476
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5906
476
    }
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_29reader_impl_for_regex_matchesIwEESA_NS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_29reader_impl_for_regex_matchesIwEESA_NS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_25reader_impl_for_monostateIwEESA_NS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEaEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEsEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEElEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEExEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEhEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEtEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEjEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEmEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEyEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_23reader_impl_for_voidptrIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEPvEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_23reader_impl_for_voidptrIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEPvEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_20reader_impl_for_boolIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEbEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_20reader_impl_for_boolIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEbEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_20reader_impl_for_charIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_20reader_impl_for_charIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEcEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_wcharIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_wcharIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEwEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_26reader_impl_for_code_pointIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEDiEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_26reader_impl_for_code_pointIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEDiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_floatIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEfEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_floatIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEdEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_floatIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEeEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENSt3__117basic_string_viewIcNSK_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SQ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEENSC_IcNSD_IcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENSt3__112basic_stringIcNSK_11char_traitsIcEENSK_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SS_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEENSB_12basic_stringIcNSD_IcEENSB_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SN_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENSt3__117basic_string_viewIwNSK_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SQ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEESF_EENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENSt3__112basic_stringIwNSK_11char_traitsIwEENSK_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SS_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEENSB_12basic_stringIwSE_NSB_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_29reader_impl_for_regex_matchesIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SN_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_29reader_impl_for_regex_matchesIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_29reader_impl_for_regex_matchesIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SN_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_29reader_impl_for_regex_matchesIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_25reader_impl_for_monostateIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v44impl18default_arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_25reader_impl_for_monostateIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
5907
5908
    template <typename T>
5909
    scan_expected<iterator> operator()(T& value)
5910
9.90k
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
9.90k
                          basic_contiguous_scan_context<char_type>>) {
5915
9.90k
            auto rd = make_reader<T, char_type>();
5916
9.90k
            return impl(rd, range, value);
5917
        }
5918
0
        else if constexpr (!detail::is_type_disabled<T>) {
5919
0
            auto rd = make_reader<T, char_type>();
5920
0
            if (!is_segment_contiguous(range)) {
5921
0
                return impl(rd, range, value);
5922
0
            }
5923
0
            auto crange = get_as_contiguous(range);
5924
0
            SCN_TRY(it, impl(rd, crange, value));
5925
0
            return ranges::next(range.begin(),
5926
0
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
9.90k
    }
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<short>(short&)
scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<int>(int&)
Line
Count
Source
5910
624
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
624
                          basic_contiguous_scan_context<char_type>>) {
5915
624
            auto rd = make_reader<T, char_type>();
5916
624
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
624
    }
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<long>(long&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<unsigned short>(unsigned short&)
scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<unsigned int>(unsigned int&)
Line
Count
Source
5910
624
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
624
                          basic_contiguous_scan_context<char_type>>) {
5915
624
            auto rd = make_reader<T, char_type>();
5916
624
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
624
    }
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<unsigned long long>(unsigned long long&)
scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<void*>(void*&)
Line
Count
Source
5910
624
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
624
                          basic_contiguous_scan_context<char_type>>) {
5915
624
            auto rd = make_reader<T, char_type>();
5916
624
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
624
    }
scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<bool>(bool&)
Line
Count
Source
5910
624
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
624
                          basic_contiguous_scan_context<char_type>>) {
5915
624
            auto rd = make_reader<T, char_type>();
5916
624
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
624
    }
scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<char>(char&)
Line
Count
Source
5910
624
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
624
                          basic_contiguous_scan_context<char_type>>) {
5915
624
            auto rd = make_reader<T, char_type>();
5916
624
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
624
    }
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<wchar_t>(wchar_t&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<float>(float&)
scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<double>(double&)
Line
Count
Source
5910
624
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
624
                          basic_contiguous_scan_context<char_type>>) {
5915
624
            auto rd = make_reader<T, char_type>();
5916
624
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
624
    }
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<long double>(long double&)
scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Line
Count
Source
5910
624
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
624
                          basic_contiguous_scan_context<char_type>>) {
5915
624
            auto rd = make_reader<T, char_type>();
5916
624
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
624
    }
scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
5910
624
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
624
                          basic_contiguous_scan_context<char_type>>) {
5915
624
            auto rd = make_reader<T, char_type>();
5916
624
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
624
    }
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
5910
624
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
624
                          basic_contiguous_scan_context<char_type>>) {
5915
624
            auto rd = make_reader<T, char_type>();
5916
624
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
624
    }
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<scn::v4::basic_regex_matches<char> >(scn::v4::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<scn::v4::basic_regex_matches<wchar_t> >(scn::v4::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<scn::v4::monostate>(scn::v4::monostate&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<short>(short&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<int>(int&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<long>(long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned short>(unsigned short&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned int>(unsigned int&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned long long>(unsigned long long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<void*>(void*&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<bool>(bool&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<char>(char&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<wchar_t>(wchar_t&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<float>(float&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<double>(double&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<long double>(long double&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<scn::v4::basic_regex_matches<char> >(scn::v4::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<scn::v4::basic_regex_matches<wchar_t> >(scn::v4::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<scn::v4::monostate>(scn::v4::monostate&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<short>(short&)
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<int>(int&)
Line
Count
Source
5910
476
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
476
                          basic_contiguous_scan_context<char_type>>) {
5915
476
            auto rd = make_reader<T, char_type>();
5916
476
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
476
    }
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<long>(long&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<unsigned short>(unsigned short&)
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<unsigned int>(unsigned int&)
Line
Count
Source
5910
476
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
476
                          basic_contiguous_scan_context<char_type>>) {
5915
476
            auto rd = make_reader<T, char_type>();
5916
476
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
476
    }
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<unsigned long long>(unsigned long long&)
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<void*>(void*&)
Line
Count
Source
5910
476
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
476
                          basic_contiguous_scan_context<char_type>>) {
5915
476
            auto rd = make_reader<T, char_type>();
5916
476
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
476
    }
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<bool>(bool&)
Line
Count
Source
5910
476
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
476
                          basic_contiguous_scan_context<char_type>>) {
5915
476
            auto rd = make_reader<T, char_type>();
5916
476
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
476
    }
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<char>(char&)
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<wchar_t>(wchar_t&)
Line
Count
Source
5910
476
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
476
                          basic_contiguous_scan_context<char_type>>) {
5915
476
            auto rd = make_reader<T, char_type>();
5916
476
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
476
    }
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<float>(float&)
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<double>(double&)
Line
Count
Source
5910
476
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
476
                          basic_contiguous_scan_context<char_type>>) {
5915
476
            auto rd = make_reader<T, char_type>();
5916
476
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
476
    }
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<long double>(long double&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
5910
476
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
476
                          basic_contiguous_scan_context<char_type>>) {
5915
476
            auto rd = make_reader<T, char_type>();
5916
476
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
476
    }
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
Line
Count
Source
5910
476
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
476
                          basic_contiguous_scan_context<char_type>>) {
5915
476
            auto rd = make_reader<T, char_type>();
5916
476
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
476
    }
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
5910
476
    {
5911
        if constexpr (!detail::is_type_disabled<T> &&
5912
                      std::is_same_v<
5913
                          context_type,
5914
476
                          basic_contiguous_scan_context<char_type>>) {
5915
476
            auto rd = make_reader<T, char_type>();
5916
476
            return impl(rd, range, value);
5917
        }
5918
        else if constexpr (!detail::is_type_disabled<T>) {
5919
            auto rd = make_reader<T, char_type>();
5920
            if (!is_segment_contiguous(range)) {
5921
                return impl(rd, range, value);
5922
            }
5923
            auto crange = get_as_contiguous(range);
5924
            SCN_TRY(it, impl(rd, crange, value));
5925
            return ranges::next(range.begin(),
5926
                                ranges::distance(crange.begin(), it));
5927
        }
5928
        else {
5929
            SCN_EXPECT(false);
5930
            SCN_UNREACHABLE;
5931
        }
5932
476
    }
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<scn::v4::basic_regex_matches<char> >(scn::v4::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<scn::v4::basic_regex_matches<wchar_t> >(scn::v4::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<scn::v4::monostate>(scn::v4::monostate&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<short>(short&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<int>(int&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<long>(long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned short>(unsigned short&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned int>(unsigned int&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned long long>(unsigned long long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<void*>(void*&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<bool>(bool&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<char>(char&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<wchar_t>(wchar_t&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<float>(float&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<double>(double&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<long double>(long double&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<scn::v4::basic_regex_matches<char> >(scn::v4::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<scn::v4::basic_regex_matches<wchar_t> >(scn::v4::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<scn::v4::monostate>(scn::v4::monostate&)
5933
5934
    detail::default_context<char_type> make_custom_ctx()
5935
0
    {
5936
        if constexpr (std::is_same_v<
5937
                          context_type,
5938
0
                          basic_contiguous_scan_context<char_type>>) {
5939
0
            auto it =
5940
0
                typename detail::basic_scan_buffer<char_type>::forward_iterator{
5941
0
                    std::basic_string_view<char_type>(range.data(),
5942
0
                                                      range.size()),
5943
0
                    0};
5944
0
            return {it, args, loc};
5945
        }
5946
0
        else {
5947
0
            return {range.begin(), args, loc};
5948
0
        }
5949
0
    }
Unexecuted instantiation: scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::make_custom_ctx()
Unexecuted instantiation: scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::make_custom_ctx()
Unexecuted instantiation: scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::make_custom_ctx()
Unexecuted instantiation: scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::make_custom_ctx()
5950
5951
    scan_expected<iterator> operator()(
5952
        typename basic_scan_arg<detail::default_context<char_type>>::handle h)
5953
0
    {
5954
0
        if constexpr (!detail::is_type_disabled<void>) {
5955
0
            basic_scan_parse_context<char_type> parse_ctx{{}};
5956
0
            auto ctx = make_custom_ctx();
5957
0
            SCN_TRY_DISCARD(h.scan(parse_ctx, ctx));
5958
5959
            if constexpr (std::is_same_v<
5960
                              context_type,
5961
0
                              basic_contiguous_scan_context<char_type>>) {
5962
0
                return range.begin() + ctx.begin().position();
5963
            }
5964
0
            else {
5965
0
                return ctx.begin();
5966
0
            }
5967
        }
5968
        else {
5969
            SCN_EXPECT(false);
5970
            SCN_UNREACHABLE;
5971
        }
5972
0
    }
Unexecuted instantiation: scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()(scn::v4::basic_scan_arg<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::handle)
Unexecuted instantiation: scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()(scn::v4::basic_scan_arg<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::handle)
Unexecuted instantiation: scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()(scn::v4::basic_scan_arg<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::handle)
Unexecuted instantiation: scn::v4::impl::default_arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()(scn::v4::basic_scan_arg<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::handle)
5973
5974
    range_type range;
5975
    args_type args;
5976
    detail::locale_ref loc;
5977
};
5978
5979
template <typename Iterator>
5980
using skip_fill_result = std::pair<Iterator, std::ptrdiff_t>;
5981
5982
template <typename Range>
5983
auto skip_fill(Range range,
5984
               std::ptrdiff_t max_width,
5985
               const detail::fill_type& fill,
5986
               bool want_skipped_width)
5987
    -> scan_expected<skip_fill_result<ranges::iterator_t<Range>>>
5988
3.78k
{
5989
3.78k
    using char_type = detail::char_t<Range>;
5990
3.78k
    using result_type = skip_fill_result<ranges::iterator_t<Range>>;
5991
5992
3.78k
    if (fill.size() <= sizeof(char_type)) {
5993
2.54k
        const auto fill_ch = fill.template get_code_unit<char_type>();
5994
4.20k
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
Unexecuted instantiation: _ZZN3scn2v44impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESI_lRKNS8_9fill_typeEbENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS7_9fill_typeEbENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEENS0_13scan_expectedINS4_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEbENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v44impl9skip_fillINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedINS3_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESB_lRKNS0_6detail9fill_typeEbENKUlcE_clEc
_ZZN3scn2v44impl9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEbENKUlcE_clEc
Line
Count
Source
5994
912
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
Unexecuted instantiation: _ZZN3scn2v44impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESI_lRKNS8_9fill_typeEbENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS7_9fill_typeEbENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEENS0_13scan_expectedINS4_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEbENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v44impl9skip_fillINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEENS0_13scan_expectedINS3_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESB_lRKNS0_6detail9fill_typeEbENKUlwE_clEw
_ZZN3scn2v44impl9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEbENKUlwE_clEw
Line
Count
Source
5994
1.82k
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
_ZZN3scn2v44impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbENKUlcE_clEc
Line
Count
Source
5994
688
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
_ZZN3scn2v44impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbENKUlwE_clEw
Line
Count
Source
5994
784
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
5995
5996
2.54k
        if (max_width == 0) {
5997
1.32k
            auto it = read_while_code_unit(range, pred);
5998
5999
1.32k
            if (want_skipped_width) {
6000
238
                auto prefix_width =
6001
238
                    static_cast<std::ptrdiff_t>(
6002
238
                        calculate_text_width(static_cast<char32_t>(fill_ch))) *
6003
238
                    ranges::distance(range.begin(), it);
6004
238
                return result_type{it, prefix_width};
6005
238
            }
6006
1.08k
            return result_type{it, 0};
6007
1.32k
        }
6008
6009
1.22k
        auto max_width_view = take_width(range, max_width);
6010
1.22k
        auto w_it = read_while_code_unit(max_width_view, pred);
6011
6012
1.22k
        if (want_skipped_width) {
6013
1.22k
            return result_type{w_it.base(), max_width - w_it.count()};
6014
1.22k
        }
6015
0
        return result_type{w_it.base(), 0};
6016
1.22k
    }
6017
6018
1.23k
    const auto fill_chars = fill.template get_code_units<char_type>();
6019
1.23k
    if (max_width == 0) {
6020
258
        auto it = read_while_code_units(range, fill_chars);
6021
6022
258
        if (want_skipped_width) {
6023
76
            auto prefix_width =
6024
76
                static_cast<std::ptrdiff_t>(calculate_text_width(fill_chars)) *
6025
76
                ranges::distance(range.begin(), it) / ranges::ssize(fill_chars);
6026
76
            return result_type{it, prefix_width};
6027
76
        }
6028
182
        return result_type{it, 0};
6029
258
    }
6030
6031
978
    auto max_width_view = take_width(range, max_width);
6032
978
    auto w_it = read_while_code_units(max_width_view, fill_chars);
6033
6034
978
    if (want_skipped_width) {
6035
978
        return result_type{w_it.base(), max_width - w_it.count()};
6036
978
    }
6037
0
    return result_type{w_it.base(), 0};
6038
978
}
Unexecuted instantiation: _ZN3scn2v44impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESI_lRKNS8_9fill_typeEb
Unexecuted instantiation: _ZN3scn2v44impl9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS7_9fill_typeEb
Unexecuted instantiation: _ZN3scn2v44impl9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEENS0_13scan_expectedINS4_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEb
Unexecuted instantiation: _ZN3scn2v44impl9skip_fillINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedINS3_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESB_lRKNS0_6detail9fill_typeEb
_ZN3scn2v44impl9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEb
Line
Count
Source
5988
1.07k
{
5989
1.07k
    using char_type = detail::char_t<Range>;
5990
1.07k
    using result_type = skip_fill_result<ranges::iterator_t<Range>>;
5991
5992
1.07k
    if (fill.size() <= sizeof(char_type)) {
5993
494
        const auto fill_ch = fill.template get_code_unit<char_type>();
5994
494
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
5995
5996
494
        if (max_width == 0) {
5997
390
            auto it = read_while_code_unit(range, pred);
5998
5999
390
            if (want_skipped_width) {
6000
118
                auto prefix_width =
6001
118
                    static_cast<std::ptrdiff_t>(
6002
118
                        calculate_text_width(static_cast<char32_t>(fill_ch))) *
6003
118
                    ranges::distance(range.begin(), it);
6004
118
                return result_type{it, prefix_width};
6005
118
            }
6006
272
            return result_type{it, 0};
6007
390
        }
6008
6009
104
        auto max_width_view = take_width(range, max_width);
6010
104
        auto w_it = read_while_code_unit(max_width_view, pred);
6011
6012
104
        if (want_skipped_width) {
6013
104
            return result_type{w_it.base(), max_width - w_it.count()};
6014
104
        }
6015
0
        return result_type{w_it.base(), 0};
6016
104
    }
6017
6018
578
    const auto fill_chars = fill.template get_code_units<char_type>();
6019
578
    if (max_width == 0) {
6020
258
        auto it = read_while_code_units(range, fill_chars);
6021
6022
258
        if (want_skipped_width) {
6023
76
            auto prefix_width =
6024
76
                static_cast<std::ptrdiff_t>(calculate_text_width(fill_chars)) *
6025
76
                ranges::distance(range.begin(), it) / ranges::ssize(fill_chars);
6026
76
            return result_type{it, prefix_width};
6027
76
        }
6028
182
        return result_type{it, 0};
6029
258
    }
6030
6031
320
    auto max_width_view = take_width(range, max_width);
6032
320
    auto w_it = read_while_code_units(max_width_view, fill_chars);
6033
6034
320
    if (want_skipped_width) {
6035
320
        return result_type{w_it.base(), max_width - w_it.count()};
6036
320
    }
6037
0
    return result_type{w_it.base(), 0};
6038
320
}
Unexecuted instantiation: _ZN3scn2v44impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESI_lRKNS8_9fill_typeEb
Unexecuted instantiation: _ZN3scn2v44impl9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS7_9fill_typeEb
Unexecuted instantiation: _ZN3scn2v44impl9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEENS0_13scan_expectedINS4_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEb
Unexecuted instantiation: _ZN3scn2v44impl9skip_fillINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEENS0_13scan_expectedINS3_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESB_lRKNS0_6detail9fill_typeEb
_ZN3scn2v44impl9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEb
Line
Count
Source
5988
1.11k
{
5989
1.11k
    using char_type = detail::char_t<Range>;
5990
1.11k
    using result_type = skip_fill_result<ranges::iterator_t<Range>>;
5991
5992
1.11k
    if (fill.size() <= sizeof(char_type)) {
5993
1.11k
        const auto fill_ch = fill.template get_code_unit<char_type>();
5994
1.11k
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
5995
5996
1.11k
        if (max_width == 0) {
5997
932
            auto it = read_while_code_unit(range, pred);
5998
5999
932
            if (want_skipped_width) {
6000
120
                auto prefix_width =
6001
120
                    static_cast<std::ptrdiff_t>(
6002
120
                        calculate_text_width(static_cast<char32_t>(fill_ch))) *
6003
120
                    ranges::distance(range.begin(), it);
6004
120
                return result_type{it, prefix_width};
6005
120
            }
6006
812
            return result_type{it, 0};
6007
932
        }
6008
6009
186
        auto max_width_view = take_width(range, max_width);
6010
186
        auto w_it = read_while_code_unit(max_width_view, pred);
6011
6012
186
        if (want_skipped_width) {
6013
186
            return result_type{w_it.base(), max_width - w_it.count()};
6014
186
        }
6015
0
        return result_type{w_it.base(), 0};
6016
186
    }
6017
6018
0
    const auto fill_chars = fill.template get_code_units<char_type>();
6019
0
    if (max_width == 0) {
6020
0
        auto it = read_while_code_units(range, fill_chars);
6021
6022
0
        if (want_skipped_width) {
6023
0
            auto prefix_width =
6024
0
                static_cast<std::ptrdiff_t>(calculate_text_width(fill_chars)) *
6025
0
                ranges::distance(range.begin(), it) / ranges::ssize(fill_chars);
6026
0
            return result_type{it, prefix_width};
6027
0
        }
6028
0
        return result_type{it, 0};
6029
0
    }
6030
6031
0
    auto max_width_view = take_width(range, max_width);
6032
0
    auto w_it = read_while_code_units(max_width_view, fill_chars);
6033
6034
0
    if (want_skipped_width) {
6035
0
        return result_type{w_it.base(), max_width - w_it.count()};
6036
0
    }
6037
0
    return result_type{w_it.base(), 0};
6038
0
}
_ZN3scn2v44impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEb
Line
Count
Source
5988
1.13k
{
5989
1.13k
    using char_type = detail::char_t<Range>;
5990
1.13k
    using result_type = skip_fill_result<ranges::iterator_t<Range>>;
5991
5992
1.13k
    if (fill.size() <= sizeof(char_type)) {
5993
472
        const auto fill_ch = fill.template get_code_unit<char_type>();
5994
472
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
5995
5996
472
        if (max_width == 0) {
5997
0
            auto it = read_while_code_unit(range, pred);
5998
5999
0
            if (want_skipped_width) {
6000
0
                auto prefix_width =
6001
0
                    static_cast<std::ptrdiff_t>(
6002
0
                        calculate_text_width(static_cast<char32_t>(fill_ch))) *
6003
0
                    ranges::distance(range.begin(), it);
6004
0
                return result_type{it, prefix_width};
6005
0
            }
6006
0
            return result_type{it, 0};
6007
0
        }
6008
6009
472
        auto max_width_view = take_width(range, max_width);
6010
472
        auto w_it = read_while_code_unit(max_width_view, pred);
6011
6012
472
        if (want_skipped_width) {
6013
472
            return result_type{w_it.base(), max_width - w_it.count()};
6014
472
        }
6015
0
        return result_type{w_it.base(), 0};
6016
472
    }
6017
6018
658
    const auto fill_chars = fill.template get_code_units<char_type>();
6019
658
    if (max_width == 0) {
6020
0
        auto it = read_while_code_units(range, fill_chars);
6021
6022
0
        if (want_skipped_width) {
6023
0
            auto prefix_width =
6024
0
                static_cast<std::ptrdiff_t>(calculate_text_width(fill_chars)) *
6025
0
                ranges::distance(range.begin(), it) / ranges::ssize(fill_chars);
6026
0
            return result_type{it, prefix_width};
6027
0
        }
6028
0
        return result_type{it, 0};
6029
0
    }
6030
6031
658
    auto max_width_view = take_width(range, max_width);
6032
658
    auto w_it = read_while_code_units(max_width_view, fill_chars);
6033
6034
658
    if (want_skipped_width) {
6035
658
        return result_type{w_it.base(), max_width - w_it.count()};
6036
658
    }
6037
0
    return result_type{w_it.base(), 0};
6038
658
}
_ZN3scn2v44impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEb
Line
Count
Source
5988
460
{
5989
460
    using char_type = detail::char_t<Range>;
5990
460
    using result_type = skip_fill_result<ranges::iterator_t<Range>>;
5991
5992
460
    if (fill.size() <= sizeof(char_type)) {
5993
460
        const auto fill_ch = fill.template get_code_unit<char_type>();
5994
460
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
5995
5996
460
        if (max_width == 0) {
5997
0
            auto it = read_while_code_unit(range, pred);
5998
5999
0
            if (want_skipped_width) {
6000
0
                auto prefix_width =
6001
0
                    static_cast<std::ptrdiff_t>(
6002
0
                        calculate_text_width(static_cast<char32_t>(fill_ch))) *
6003
0
                    ranges::distance(range.begin(), it);
6004
0
                return result_type{it, prefix_width};
6005
0
            }
6006
0
            return result_type{it, 0};
6007
0
        }
6008
6009
460
        auto max_width_view = take_width(range, max_width);
6010
460
        auto w_it = read_while_code_unit(max_width_view, pred);
6011
6012
460
        if (want_skipped_width) {
6013
460
            return result_type{w_it.base(), max_width - w_it.count()};
6014
460
        }
6015
0
        return result_type{w_it.base(), 0};
6016
460
    }
6017
6018
0
    const auto fill_chars = fill.template get_code_units<char_type>();
6019
0
    if (max_width == 0) {
6020
0
        auto it = read_while_code_units(range, fill_chars);
6021
6022
0
        if (want_skipped_width) {
6023
0
            auto prefix_width =
6024
0
                static_cast<std::ptrdiff_t>(calculate_text_width(fill_chars)) *
6025
0
                ranges::distance(range.begin(), it) / ranges::ssize(fill_chars);
6026
0
            return result_type{it, prefix_width};
6027
0
        }
6028
0
        return result_type{it, 0};
6029
0
    }
6030
6031
0
    auto max_width_view = take_width(range, max_width);
6032
0
    auto w_it = read_while_code_units(max_width_view, fill_chars);
6033
6034
0
    if (want_skipped_width) {
6035
0
        return result_type{w_it.base(), max_width - w_it.count()};
6036
0
    }
6037
0
    return result_type{w_it.base(), 0};
6038
0
}
6039
6040
SCN_MAYBE_UNUSED constexpr scan_expected<void> check_widths_for_arg_reader(
6041
    const detail::format_specs& specs,
6042
    std::ptrdiff_t prefix_width,
6043
    std::ptrdiff_t value_width,
6044
    std::ptrdiff_t postfix_width)
6045
7.54k
{
6046
7.54k
    if (specs.width != 0) {
6047
2.00k
        if (prefix_width + value_width + postfix_width < specs.width) {
6048
942
            return detail::unexpected_scan_error(
6049
942
                scan_error::length_too_short,
6050
942
                "Scanned value too narrow, width did not exceed what "
6051
942
                "was specified in the format string");
6052
942
        }
6053
2.00k
    }
6054
6.60k
    if (specs.precision != 0) {
6055
        // Ensured by take_width_view
6056
2.80k
        SCN_ENSURE(prefix_width + value_width + postfix_width <=
6057
2.80k
                   specs.precision);
6058
2.80k
    }
6059
6.60k
    return {};
6060
6.60k
}
6061
6062
template <typename Context>
6063
struct arg_reader {
6064
    using context_type = Context;
6065
    using char_type = typename context_type::char_type;
6066
6067
    using range_type = typename context_type::range_type;
6068
    using iterator = ranges::iterator_t<range_type>;
6069
6070
    template <typename Range>
6071
    auto impl_prefix(Range rng, bool rd_skip_ws_before_read)
6072
        -> scan_expected<skip_fill_result<ranges::iterator_t<Range>>>
6073
17.3k
    {
6074
17.3k
        const bool need_skipped_width =
6075
17.3k
            specs.width != 0 || specs.precision != 0;
6076
17.3k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6077
6078
        // Read prefix
6079
17.3k
        if (specs.align == detail::align_type::right ||
6080
17.3k
            specs.align == detail::align_type::center) {
6081
2.66k
            return skip_fill(rng, specs.precision, specs.fill,
6082
2.66k
                             need_skipped_width);
6083
2.66k
        }
6084
14.6k
        if (specs.align == detail::align_type::none && rd_skip_ws_before_read) {
6085
            // Default alignment:
6086
            // Skip preceding whitespace, if required by the reader
6087
7.63k
            if (specs.precision != 0) {
6088
3.45k
                auto max_width_view = take_width(rng, specs.precision);
6089
3.45k
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view)
6090
3.14k
                                  .transform_error(make_eof_scan_error));
6091
3.14k
                return result_type{w_it.base(), specs.precision - w_it.count()};
6092
3.45k
            }
6093
8.36k
            SCN_TRY(it, skip_classic_whitespace(rng).transform_error(
6094
8.36k
                            make_eof_scan_error));
6095
6096
8.36k
            if (need_skipped_width) {
6097
2.85k
                return result_type{
6098
2.85k
                    it,
6099
2.85k
                    calculate_text_width(make_contiguous_buffer(
6100
2.85k
                                             ranges::subrange{rng.begin(), it})
6101
2.85k
                                             .view())};
6102
2.85k
            }
6103
1.32k
            return result_type{it, 0};
6104
8.36k
        }
6105
6106
7.04k
        return result_type{rng.begin(), 0};
6107
14.6k
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE11impl_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRT_EEEElEEEESN_b
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE11impl_prefixINS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT_EEEElEEEESL_b
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE11impl_prefixINS1_15take_width_viewINSt3__117basic_string_viewIcNSA_11char_traitsIcEEEEEEEENS0_13scan_expectedINSA_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_b
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE11impl_prefixINSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEEENS0_13scan_expectedINS9_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_b
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE11impl_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRT_EEEElEEEESN_b
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE11impl_prefixINS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT_EEEElEEEESL_b
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE11impl_prefixINS1_15take_width_viewINSt3__117basic_string_viewIwNSA_11char_traitsIwEEEEEEEENS0_13scan_expectedINSA_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_b
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE11impl_prefixINSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEEENS0_13scan_expectedINS9_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_b
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE11impl_prefixINS1_15take_width_viewISA_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_b
Line
Count
Source
6073
4.91k
    {
6074
4.91k
        const bool need_skipped_width =
6075
4.91k
            specs.width != 0 || specs.precision != 0;
6076
4.91k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6077
6078
        // Read prefix
6079
4.91k
        if (specs.align == detail::align_type::right ||
6080
4.91k
            specs.align == detail::align_type::center) {
6081
1.13k
            return skip_fill(rng, specs.precision, specs.fill,
6082
1.13k
                             need_skipped_width);
6083
1.13k
        }
6084
3.78k
        if (specs.align == detail::align_type::none && rd_skip_ws_before_read) {
6085
            // Default alignment:
6086
            // Skip preceding whitespace, if required by the reader
6087
2.28k
            if (specs.precision != 0) {
6088
2.28k
                auto max_width_view = take_width(rng, specs.precision);
6089
2.28k
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view)
6090
2.04k
                                  .transform_error(make_eof_scan_error));
6091
2.04k
                return result_type{w_it.base(), specs.precision - w_it.count()};
6092
2.28k
            }
6093
0
            SCN_TRY(it, skip_classic_whitespace(rng).transform_error(
6094
0
                            make_eof_scan_error));
6095
6096
0
            if (need_skipped_width) {
6097
0
                return result_type{
6098
0
                    it,
6099
0
                    calculate_text_width(make_contiguous_buffer(
6100
0
                                             ranges::subrange{rng.begin(), it})
6101
0
                                             .view())};
6102
0
            }
6103
0
            return result_type{it, 0};
6104
0
        }
6105
6106
1.49k
        return result_type{rng.begin(), 0};
6107
3.78k
    }
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE11impl_prefixISA_EENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_b
Line
Count
Source
6073
5.95k
    {
6074
5.95k
        const bool need_skipped_width =
6075
5.95k
            specs.width != 0 || specs.precision != 0;
6076
5.95k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6077
6078
        // Read prefix
6079
5.95k
        if (specs.align == detail::align_type::right ||
6080
5.95k
            specs.align == detail::align_type::center) {
6081
438
            return skip_fill(rng, specs.precision, specs.fill,
6082
438
                             need_skipped_width);
6083
438
        }
6084
5.51k
        if (specs.align == detail::align_type::none && rd_skip_ws_before_read) {
6085
            // Default alignment:
6086
            // Skip preceding whitespace, if required by the reader
6087
1.69k
            if (specs.precision != 0) {
6088
0
                auto max_width_view = take_width(rng, specs.precision);
6089
0
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view)
6090
0
                                  .transform_error(make_eof_scan_error));
6091
0
                return result_type{w_it.base(), specs.precision - w_it.count()};
6092
0
            }
6093
3.38k
            SCN_TRY(it, skip_classic_whitespace(rng).transform_error(
6094
3.38k
                            make_eof_scan_error));
6095
6096
3.38k
            if (need_skipped_width) {
6097
1.06k
                return result_type{
6098
1.06k
                    it,
6099
1.06k
                    calculate_text_width(make_contiguous_buffer(
6100
1.06k
                                             ranges::subrange{rng.begin(), it})
6101
1.06k
                                             .view())};
6102
1.06k
            }
6103
630
            return result_type{it, 0};
6104
3.38k
        }
6105
6106
3.82k
        return result_type{rng.begin(), 0};
6107
5.51k
    }
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE11impl_prefixINS1_15take_width_viewISA_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_b
Line
Count
Source
6073
2.32k
    {
6074
2.32k
        const bool need_skipped_width =
6075
2.32k
            specs.width != 0 || specs.precision != 0;
6076
2.32k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6077
6078
        // Read prefix
6079
2.32k
        if (specs.align == detail::align_type::right ||
6080
2.32k
            specs.align == detail::align_type::center) {
6081
460
            return skip_fill(rng, specs.precision, specs.fill,
6082
460
                             need_skipped_width);
6083
460
        }
6084
1.86k
        if (specs.align == detail::align_type::none && rd_skip_ws_before_read) {
6085
            // Default alignment:
6086
            // Skip preceding whitespace, if required by the reader
6087
1.17k
            if (specs.precision != 0) {
6088
1.17k
                auto max_width_view = take_width(rng, specs.precision);
6089
1.17k
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view)
6090
1.10k
                                  .transform_error(make_eof_scan_error));
6091
1.10k
                return result_type{w_it.base(), specs.precision - w_it.count()};
6092
1.17k
            }
6093
0
            SCN_TRY(it, skip_classic_whitespace(rng).transform_error(
6094
0
                            make_eof_scan_error));
6095
6096
0
            if (need_skipped_width) {
6097
0
                return result_type{
6098
0
                    it,
6099
0
                    calculate_text_width(make_contiguous_buffer(
6100
0
                                             ranges::subrange{rng.begin(), it})
6101
0
                                             .view())};
6102
0
            }
6103
0
            return result_type{it, 0};
6104
0
        }
6105
6106
696
        return result_type{rng.begin(), 0};
6107
1.86k
    }
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE11impl_prefixISA_EENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_b
Line
Count
Source
6073
4.15k
    {
6074
4.15k
        const bool need_skipped_width =
6075
4.15k
            specs.width != 0 || specs.precision != 0;
6076
4.15k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6077
6078
        // Read prefix
6079
4.15k
        if (specs.align == detail::align_type::right ||
6080
4.15k
            specs.align == detail::align_type::center) {
6081
636
            return skip_fill(rng, specs.precision, specs.fill,
6082
636
                             need_skipped_width);
6083
636
        }
6084
3.51k
        if (specs.align == detail::align_type::none && rd_skip_ws_before_read) {
6085
            // Default alignment:
6086
            // Skip preceding whitespace, if required by the reader
6087
2.49k
            if (specs.precision != 0) {
6088
0
                auto max_width_view = take_width(rng, specs.precision);
6089
0
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view)
6090
0
                                  .transform_error(make_eof_scan_error));
6091
0
                return result_type{w_it.base(), specs.precision - w_it.count()};
6092
0
            }
6093
4.98k
            SCN_TRY(it, skip_classic_whitespace(rng).transform_error(
6094
4.98k
                            make_eof_scan_error));
6095
6096
4.98k
            if (need_skipped_width) {
6097
1.79k
                return result_type{
6098
1.79k
                    it,
6099
1.79k
                    calculate_text_width(make_contiguous_buffer(
6100
1.79k
                                             ranges::subrange{rng.begin(), it})
6101
1.79k
                                             .view())};
6102
1.79k
            }
6103
698
            return result_type{it, 0};
6104
4.98k
        }
6105
6106
1.02k
        return result_type{rng.begin(), 0};
6107
3.51k
    }
6108
6109
    template <typename Range>
6110
    auto impl_postfix(Range rng,
6111
                      bool rd_skip_ws_before_read,
6112
                      std::ptrdiff_t prefix_width,
6113
                      std::ptrdiff_t value_width)
6114
        -> scan_expected<skip_fill_result<ranges::iterator_t<Range>>>
6115
5.56k
    {
6116
5.56k
        const bool need_skipped_width =
6117
5.56k
            specs.width != 0 || specs.precision != 0;
6118
5.56k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6119
6120
5.56k
        if (specs.align == detail::align_type::left ||
6121
5.56k
            specs.align == detail::align_type::center) {
6122
1.42k
            if (specs.precision != 0 &&
6123
1.42k
                specs.precision - value_width - prefix_width == 0) {
6124
304
                return result_type{rng.begin(), 0};
6125
304
            }
6126
1.11k
            return skip_fill(rng, specs.precision - value_width - prefix_width,
6127
1.11k
                             specs.fill, need_skipped_width);
6128
1.42k
        }
6129
4.14k
        if (specs.align == detail::align_type::none &&
6130
4.14k
            !rd_skip_ws_before_read &&
6131
4.14k
            ((specs.width != 0 && prefix_width + value_width < specs.width) ||
6132
3.32k
             (specs.precision != 0 &&
6133
2.77k
              prefix_width + value_width < specs.precision))) {
6134
1.48k
            if (specs.precision != 0) {
6135
930
                const auto initial_width =
6136
930
                    specs.precision - prefix_width - value_width;
6137
930
                auto max_width_view = take_width(rng, initial_width);
6138
930
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view, true)
6139
930
                                  .transform_error(make_eof_scan_error));
6140
930
                return result_type{w_it.base(), initial_width - w_it.count()};
6141
930
            }
6142
1.10k
            SCN_TRY(it, skip_classic_whitespace(rng, true).transform_error(
6143
1.10k
                            make_eof_scan_error));
6144
6145
1.10k
            if (need_skipped_width) {
6146
550
                return result_type{
6147
550
                    it,
6148
550
                    calculate_text_width(make_contiguous_buffer(
6149
550
                                             ranges::subrange{rng.begin(), it})
6150
550
                                             .view())};
6151
550
            }
6152
0
            return result_type{it, 0};
6153
1.10k
        }
6154
2.66k
        return result_type{rng.begin(), 0};
6155
4.14k
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE12impl_postfixINS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT_EEEElEEEESL_bll
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE12impl_postfixINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_bll
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE12impl_postfixINS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT_EEEElEEEESL_bll
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE12impl_postfixINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_bll
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE12impl_postfixISA_EENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_bll
Line
Count
Source
6115
3.35k
    {
6116
3.35k
        const bool need_skipped_width =
6117
3.35k
            specs.width != 0 || specs.precision != 0;
6118
3.35k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6119
6120
3.35k
        if (specs.align == detail::align_type::left ||
6121
3.35k
            specs.align == detail::align_type::center) {
6122
756
            if (specs.precision != 0 &&
6123
756
                specs.precision - value_width - prefix_width == 0) {
6124
122
                return result_type{rng.begin(), 0};
6125
122
            }
6126
634
            return skip_fill(rng, specs.precision - value_width - prefix_width,
6127
634
                             specs.fill, need_skipped_width);
6128
756
        }
6129
2.59k
        if (specs.align == detail::align_type::none &&
6130
2.59k
            !rd_skip_ws_before_read &&
6131
2.59k
            ((specs.width != 0 && prefix_width + value_width < specs.width) ||
6132
2.12k
             (specs.precision != 0 &&
6133
1.94k
              prefix_width + value_width < specs.precision))) {
6134
718
            if (specs.precision != 0) {
6135
534
                const auto initial_width =
6136
534
                    specs.precision - prefix_width - value_width;
6137
534
                auto max_width_view = take_width(rng, initial_width);
6138
534
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view, true)
6139
534
                                  .transform_error(make_eof_scan_error));
6140
534
                return result_type{w_it.base(), initial_width - w_it.count()};
6141
534
            }
6142
368
            SCN_TRY(it, skip_classic_whitespace(rng, true).transform_error(
6143
368
                            make_eof_scan_error));
6144
6145
368
            if (need_skipped_width) {
6146
184
                return result_type{
6147
184
                    it,
6148
184
                    calculate_text_width(make_contiguous_buffer(
6149
184
                                             ranges::subrange{rng.begin(), it})
6150
184
                                             .view())};
6151
184
            }
6152
0
            return result_type{it, 0};
6153
368
        }
6154
1.88k
        return result_type{rng.begin(), 0};
6155
2.59k
    }
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE12impl_postfixISA_EENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_bll
Line
Count
Source
6115
2.20k
    {
6116
2.20k
        const bool need_skipped_width =
6117
2.20k
            specs.width != 0 || specs.precision != 0;
6118
2.20k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6119
6120
2.20k
        if (specs.align == detail::align_type::left ||
6121
2.20k
            specs.align == detail::align_type::center) {
6122
664
            if (specs.precision != 0 &&
6123
664
                specs.precision - value_width - prefix_width == 0) {
6124
182
                return result_type{rng.begin(), 0};
6125
182
            }
6126
482
            return skip_fill(rng, specs.precision - value_width - prefix_width,
6127
482
                             specs.fill, need_skipped_width);
6128
664
        }
6129
1.54k
        if (specs.align == detail::align_type::none &&
6130
1.54k
            !rd_skip_ws_before_read &&
6131
1.54k
            ((specs.width != 0 && prefix_width + value_width < specs.width) ||
6132
1.19k
             (specs.precision != 0 &&
6133
832
              prefix_width + value_width < specs.precision))) {
6134
762
            if (specs.precision != 0) {
6135
396
                const auto initial_width =
6136
396
                    specs.precision - prefix_width - value_width;
6137
396
                auto max_width_view = take_width(rng, initial_width);
6138
396
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view, true)
6139
396
                                  .transform_error(make_eof_scan_error));
6140
396
                return result_type{w_it.base(), initial_width - w_it.count()};
6141
396
            }
6142
732
            SCN_TRY(it, skip_classic_whitespace(rng, true).transform_error(
6143
732
                            make_eof_scan_error));
6144
6145
732
            if (need_skipped_width) {
6146
366
                return result_type{
6147
366
                    it,
6148
366
                    calculate_text_width(make_contiguous_buffer(
6149
366
                                             ranges::subrange{rng.begin(), it})
6150
366
                                             .view())};
6151
366
            }
6152
0
            return result_type{it, 0};
6153
732
        }
6154
782
        return result_type{rng.begin(), 0};
6155
1.54k
    }
6156
6157
    template <typename Reader, typename Range, typename T>
6158
    auto impl(Reader& rd, Range rng, T& value)
6159
        -> scan_expected<ranges::iterator_t<Range>>
6160
17.3k
    {
6161
17.3k
        const bool need_skipped_width =
6162
17.3k
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
17.3k
        auto it = rng.begin();
6166
17.3k
        std::ptrdiff_t prefix_width = 0;
6167
17.3k
        if (specs.precision != 0) {
6168
7.23k
            auto max_width_view = take_width(rng, specs.precision);
6169
7.23k
            SCN_TRY(prefix_result,
6170
6.93k
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
6.93k
            it = prefix_result.first.base();
6172
6.93k
            prefix_width = prefix_result.second;
6173
6.93k
        }
6174
10.1k
        else {
6175
10.1k
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
10.1k
            std::tie(it, prefix_width) = prefix_result;
6177
10.1k
        }
6178
17.0k
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
17.0k
        std::ptrdiff_t value_width = 0;
6182
17.0k
        if (specs.precision != 0) {
6183
6.93k
            if (specs.precision <= prefix_width) {
6184
104
                return detail::unexpected_scan_error(
6185
104
                    scan_error::invalid_fill,
6186
104
                    "Too many fill characters before value, "
6187
104
                    "precision exceeded before reading value");
6188
104
            }
6189
6190
6.82k
            const auto initial_width = specs.precision - prefix_width;
6191
6.82k
            auto max_width_view =
6192
6.82k
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
6.82k
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
2.80k
            it = w_it.base();
6195
2.80k
            value_width = initial_width - w_it.count();
6196
2.80k
        }
6197
10.1k
        else {
6198
10.1k
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
4.74k
                                             specs, value, loc));
6200
6201
4.74k
            if (need_skipped_width) {
6202
1.95k
                value_width = calculate_text_width(
6203
1.95k
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
1.95k
                        .view());
6205
1.95k
            }
6206
4.74k
        }
6207
6208
        // Read postfix
6209
7.54k
        std::ptrdiff_t postfix_width = 0;
6210
7.54k
        if (it != rng.end()) {
6211
5.56k
            SCN_TRY(postfix_result,
6212
5.56k
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
5.56k
                                 rd.skip_ws_before_read(), prefix_width,
6214
5.56k
                                 value_width));
6215
5.56k
            std::tie(it, postfix_width) = postfix_result;
6216
5.56k
        }
6217
6218
7.54k
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
7.54k
            specs, prefix_width, value_width, postfix_width));
6220
6.60k
        return it;
6221
7.54k
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_20reader_impl_for_charIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_20reader_impl_for_charIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEcEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEaEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEsEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEElEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEExEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEhEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEtEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEjEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEmEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEyEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_floatIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEfEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_floatIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEdEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_floatIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEeEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENSt3__112basic_stringIcNSK_11char_traitsIcEENSK_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SS_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEENSB_12basic_stringIcSE_NSB_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENSt3__112basic_stringIwNSK_11char_traitsIwEENSK_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SS_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEENSB_12basic_stringIwNSD_IwEENSB_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SN_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENSt3__117basic_string_viewIcNSK_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SQ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEESF_EENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENSt3__117basic_string_viewIwNSK_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SQ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEENSC_IwNSD_IwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_29reader_impl_for_regex_matchesIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SN_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_29reader_impl_for_regex_matchesIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_29reader_impl_for_regex_matchesIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SN_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_29reader_impl_for_regex_matchesIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_wcharIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_wcharIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEwEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEaEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEsEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEElEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEExEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEhEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEtEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEjEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEmEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEyEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_floatIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEfEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_floatIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEdEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_21reader_impl_for_floatIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEeEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENSt3__112basic_stringIcNSK_11char_traitsIcEENSK_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SS_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEENSB_12basic_stringIcNSD_IcEENSB_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SN_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENSt3__112basic_stringIwNSK_11char_traitsIwEENSK_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SS_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEENSB_12basic_stringIwSE_NSB_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENSt3__117basic_string_viewIcNSK_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SQ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEENSC_IcNSD_IcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENSt3__117basic_string_viewIwNSK_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SQ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEESF_EENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_29reader_impl_for_regex_matchesIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SN_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_29reader_impl_for_regex_matchesIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_29reader_impl_for_regex_matchesIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SN_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_29reader_impl_for_regex_matchesIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_aEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_sEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_iEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6160
668
    {
6161
668
        const bool need_skipped_width =
6162
668
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
668
        auto it = rng.begin();
6166
668
        std::ptrdiff_t prefix_width = 0;
6167
668
        if (specs.precision != 0) {
6168
386
            auto max_width_view = take_width(rng, specs.precision);
6169
386
            SCN_TRY(prefix_result,
6170
354
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
354
            it = prefix_result.first.base();
6172
354
            prefix_width = prefix_result.second;
6173
354
        }
6174
282
        else {
6175
282
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
282
            std::tie(it, prefix_width) = prefix_result;
6177
282
        }
6178
636
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
636
        std::ptrdiff_t value_width = 0;
6182
636
        if (specs.precision != 0) {
6183
354
            if (specs.precision <= prefix_width) {
6184
6
                return detail::unexpected_scan_error(
6185
6
                    scan_error::invalid_fill,
6186
6
                    "Too many fill characters before value, "
6187
6
                    "precision exceeded before reading value");
6188
6
            }
6189
6190
348
            const auto initial_width = specs.precision - prefix_width;
6191
348
            auto max_width_view =
6192
348
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
348
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
0
            it = w_it.base();
6195
0
            value_width = initial_width - w_it.count();
6196
0
        }
6197
282
        else {
6198
282
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
0
                                             specs, value, loc));
6200
6201
0
            if (need_skipped_width) {
6202
0
                value_width = calculate_text_width(
6203
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
0
                        .view());
6205
0
            }
6206
0
        }
6207
6208
        // Read postfix
6209
0
        std::ptrdiff_t postfix_width = 0;
6210
0
        if (it != rng.end()) {
6211
0
            SCN_TRY(postfix_result,
6212
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
0
                                 rd.skip_ws_before_read(), prefix_width,
6214
0
                                 value_width));
6215
0
            std::tie(it, postfix_width) = postfix_result;
6216
0
        }
6217
6218
0
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
0
            specs, prefix_width, value_width, postfix_width));
6220
0
        return it;
6221
0
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_lEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_xEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_hEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_tEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_jEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6160
668
    {
6161
668
        const bool need_skipped_width =
6162
668
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
668
        auto it = rng.begin();
6166
668
        std::ptrdiff_t prefix_width = 0;
6167
668
        if (specs.precision != 0) {
6168
386
            auto max_width_view = take_width(rng, specs.precision);
6169
386
            SCN_TRY(prefix_result,
6170
354
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
354
            it = prefix_result.first.base();
6172
354
            prefix_width = prefix_result.second;
6173
354
        }
6174
282
        else {
6175
282
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
282
            std::tie(it, prefix_width) = prefix_result;
6177
282
        }
6178
636
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
636
        std::ptrdiff_t value_width = 0;
6182
636
        if (specs.precision != 0) {
6183
354
            if (specs.precision <= prefix_width) {
6184
6
                return detail::unexpected_scan_error(
6185
6
                    scan_error::invalid_fill,
6186
6
                    "Too many fill characters before value, "
6187
6
                    "precision exceeded before reading value");
6188
6
            }
6189
6190
348
            const auto initial_width = specs.precision - prefix_width;
6191
348
            auto max_width_view =
6192
348
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
348
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
0
            it = w_it.base();
6195
0
            value_width = initial_width - w_it.count();
6196
0
        }
6197
282
        else {
6198
282
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
0
                                             specs, value, loc));
6200
6201
0
            if (need_skipped_width) {
6202
0
                value_width = calculate_text_width(
6203
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
0
                        .view());
6205
0
            }
6206
0
        }
6207
6208
        // Read postfix
6209
0
        std::ptrdiff_t postfix_width = 0;
6210
0
        if (it != rng.end()) {
6211
0
            SCN_TRY(postfix_result,
6212
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
0
                                 rd.skip_ws_before_read(), prefix_width,
6214
0
                                 value_width));
6215
0
            std::tie(it, postfix_width) = postfix_result;
6216
0
        }
6217
6218
0
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
0
            specs, prefix_width, value_width, postfix_width));
6220
0
        return it;
6221
0
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_mEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_19reader_impl_for_intIcEESA_yEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_23reader_impl_for_voidptrIcEESA_PvEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Line
Count
Source
6160
592
    {
6161
592
        const bool need_skipped_width =
6162
592
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
592
        auto it = rng.begin();
6166
592
        std::ptrdiff_t prefix_width = 0;
6167
592
        if (specs.precision != 0) {
6168
338
            auto max_width_view = take_width(rng, specs.precision);
6169
338
            SCN_TRY(prefix_result,
6170
314
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
314
            it = prefix_result.first.base();
6172
314
            prefix_width = prefix_result.second;
6173
314
        }
6174
254
        else {
6175
254
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
254
            std::tie(it, prefix_width) = prefix_result;
6177
254
        }
6178
568
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
568
        std::ptrdiff_t value_width = 0;
6182
568
        if (specs.precision != 0) {
6183
314
            if (specs.precision <= prefix_width) {
6184
4
                return detail::unexpected_scan_error(
6185
4
                    scan_error::invalid_fill,
6186
4
                    "Too many fill characters before value, "
6187
4
                    "precision exceeded before reading value");
6188
4
            }
6189
6190
310
            const auto initial_width = specs.precision - prefix_width;
6191
310
            auto max_width_view =
6192
310
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
310
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
0
            it = w_it.base();
6195
0
            value_width = initial_width - w_it.count();
6196
0
        }
6197
254
        else {
6198
254
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
0
                                             specs, value, loc));
6200
6201
0
            if (need_skipped_width) {
6202
0
                value_width = calculate_text_width(
6203
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
0
                        .view());
6205
0
            }
6206
0
        }
6207
6208
        // Read postfix
6209
0
        std::ptrdiff_t postfix_width = 0;
6210
0
        if (it != rng.end()) {
6211
0
            SCN_TRY(postfix_result,
6212
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
0
                                 rd.skip_ws_before_read(), prefix_width,
6214
0
                                 value_width));
6215
0
            std::tie(it, postfix_width) = postfix_result;
6216
0
        }
6217
6218
0
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
0
            specs, prefix_width, value_width, postfix_width));
6220
0
        return it;
6221
0
    }
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_20reader_impl_for_boolIcEESA_bEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6160
922
    {
6161
922
        const bool need_skipped_width =
6162
922
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
922
        auto it = rng.begin();
6166
922
        std::ptrdiff_t prefix_width = 0;
6167
922
        if (specs.precision != 0) {
6168
500
            auto max_width_view = take_width(rng, specs.precision);
6169
500
            SCN_TRY(prefix_result,
6170
464
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
464
            it = prefix_result.first.base();
6172
464
            prefix_width = prefix_result.second;
6173
464
        }
6174
422
        else {
6175
422
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
422
            std::tie(it, prefix_width) = prefix_result;
6177
422
        }
6178
886
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
886
        std::ptrdiff_t value_width = 0;
6182
886
        if (specs.precision != 0) {
6183
464
            if (specs.precision <= prefix_width) {
6184
10
                return detail::unexpected_scan_error(
6185
10
                    scan_error::invalid_fill,
6186
10
                    "Too many fill characters before value, "
6187
10
                    "precision exceeded before reading value");
6188
10
            }
6189
6190
454
            const auto initial_width = specs.precision - prefix_width;
6191
454
            auto max_width_view =
6192
454
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
454
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
0
            it = w_it.base();
6195
0
            value_width = initial_width - w_it.count();
6196
0
        }
6197
422
        else {
6198
422
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
0
                                             specs, value, loc));
6200
6201
0
            if (need_skipped_width) {
6202
0
                value_width = calculate_text_width(
6203
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
0
                        .view());
6205
0
            }
6206
0
        }
6207
6208
        // Read postfix
6209
0
        std::ptrdiff_t postfix_width = 0;
6210
0
        if (it != rng.end()) {
6211
0
            SCN_TRY(postfix_result,
6212
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
0
                                 rd.skip_ws_before_read(), prefix_width,
6214
0
                                 value_width));
6215
0
            std::tie(it, postfix_width) = postfix_result;
6216
0
        }
6217
6218
0
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
0
            specs, prefix_width, value_width, postfix_width));
6220
0
        return it;
6221
0
    }
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_20reader_impl_for_charIcEESA_cEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6160
646
    {
6161
646
        const bool need_skipped_width =
6162
646
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
646
        auto it = rng.begin();
6166
646
        std::ptrdiff_t prefix_width = 0;
6167
646
        if (specs.precision != 0) {
6168
374
            auto max_width_view = take_width(rng, specs.precision);
6169
374
            SCN_TRY(prefix_result,
6170
374
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
374
            it = prefix_result.first.base();
6172
374
            prefix_width = prefix_result.second;
6173
374
        }
6174
272
        else {
6175
272
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
272
            std::tie(it, prefix_width) = prefix_result;
6177
272
        }
6178
646
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
646
        std::ptrdiff_t value_width = 0;
6182
646
        if (specs.precision != 0) {
6183
374
            if (specs.precision <= prefix_width) {
6184
6
                return detail::unexpected_scan_error(
6185
6
                    scan_error::invalid_fill,
6186
6
                    "Too many fill characters before value, "
6187
6
                    "precision exceeded before reading value");
6188
6
            }
6189
6190
368
            const auto initial_width = specs.precision - prefix_width;
6191
368
            auto max_width_view =
6192
368
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
368
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
332
            it = w_it.base();
6195
332
            value_width = initial_width - w_it.count();
6196
332
        }
6197
272
        else {
6198
272
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
250
                                             specs, value, loc));
6200
6201
250
            if (need_skipped_width) {
6202
184
                value_width = calculate_text_width(
6203
184
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
184
                        .view());
6205
184
            }
6206
250
        }
6207
6208
        // Read postfix
6209
582
        std::ptrdiff_t postfix_width = 0;
6210
582
        if (it != rng.end()) {
6211
582
            SCN_TRY(postfix_result,
6212
582
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
582
                                 rd.skip_ws_before_read(), prefix_width,
6214
582
                                 value_width));
6215
582
            std::tie(it, postfix_width) = postfix_result;
6216
582
        }
6217
6218
582
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
582
            specs, prefix_width, value_width, postfix_width));
6220
420
        return it;
6221
582
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_21reader_impl_for_wcharIcEESA_wEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_26reader_impl_for_code_pointIcEESA_DiEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_21reader_impl_for_floatIcEESA_fEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_21reader_impl_for_floatIcEESA_dEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6160
680
    {
6161
680
        const bool need_skipped_width =
6162
680
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
680
        auto it = rng.begin();
6166
680
        std::ptrdiff_t prefix_width = 0;
6167
680
        if (specs.precision != 0) {
6168
396
            auto max_width_view = take_width(rng, specs.precision);
6169
396
            SCN_TRY(prefix_result,
6170
366
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
366
            it = prefix_result.first.base();
6172
366
            prefix_width = prefix_result.second;
6173
366
        }
6174
284
        else {
6175
284
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
284
            std::tie(it, prefix_width) = prefix_result;
6177
284
        }
6178
650
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
650
        std::ptrdiff_t value_width = 0;
6182
650
        if (specs.precision != 0) {
6183
366
            if (specs.precision <= prefix_width) {
6184
8
                return detail::unexpected_scan_error(
6185
8
                    scan_error::invalid_fill,
6186
8
                    "Too many fill characters before value, "
6187
8
                    "precision exceeded before reading value");
6188
8
            }
6189
6190
358
            const auto initial_width = specs.precision - prefix_width;
6191
358
            auto max_width_view =
6192
358
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
358
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
0
            it = w_it.base();
6195
0
            value_width = initial_width - w_it.count();
6196
0
        }
6197
284
        else {
6198
284
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
0
                                             specs, value, loc));
6200
6201
0
            if (need_skipped_width) {
6202
0
                value_width = calculate_text_width(
6203
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
0
                        .view());
6205
0
            }
6206
0
        }
6207
6208
        // Read postfix
6209
0
        std::ptrdiff_t postfix_width = 0;
6210
0
        if (it != rng.end()) {
6211
0
            SCN_TRY(postfix_result,
6212
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
0
                                 rd.skip_ws_before_read(), prefix_width,
6214
0
                                 value_width));
6215
0
            std::tie(it, postfix_width) = postfix_result;
6216
0
        }
6217
6218
0
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
0
            specs, prefix_width, value_width, postfix_width));
6220
0
        return it;
6221
0
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_21reader_impl_for_floatIcEESA_eEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_22reader_impl_for_stringIcEESA_NSt3__117basic_string_viewIcNSG_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Line
Count
Source
6160
2.23k
    {
6161
2.23k
        const bool need_skipped_width =
6162
2.23k
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
2.23k
        auto it = rng.begin();
6166
2.23k
        std::ptrdiff_t prefix_width = 0;
6167
2.23k
        if (specs.precision != 0) {
6168
844
            auto max_width_view = take_width(rng, specs.precision);
6169
844
            SCN_TRY(prefix_result,
6170
816
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
816
            it = prefix_result.first.base();
6172
816
            prefix_width = prefix_result.second;
6173
816
        }
6174
1.38k
        else {
6175
1.38k
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
1.38k
            std::tie(it, prefix_width) = prefix_result;
6177
1.38k
        }
6178
2.20k
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
2.20k
        std::ptrdiff_t value_width = 0;
6182
2.20k
        if (specs.precision != 0) {
6183
816
            if (specs.precision <= prefix_width) {
6184
10
                return detail::unexpected_scan_error(
6185
10
                    scan_error::invalid_fill,
6186
10
                    "Too many fill characters before value, "
6187
10
                    "precision exceeded before reading value");
6188
10
            }
6189
6190
806
            const auto initial_width = specs.precision - prefix_width;
6191
806
            auto max_width_view =
6192
806
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
806
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
456
            it = w_it.base();
6195
456
            value_width = initial_width - w_it.count();
6196
456
        }
6197
1.38k
        else {
6198
1.38k
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
814
                                             specs, value, loc));
6200
6201
814
            if (need_skipped_width) {
6202
216
                value_width = calculate_text_width(
6203
216
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
216
                        .view());
6205
216
            }
6206
814
        }
6207
6208
        // Read postfix
6209
1.27k
        std::ptrdiff_t postfix_width = 0;
6210
1.27k
        if (it != rng.end()) {
6211
924
            SCN_TRY(postfix_result,
6212
924
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
924
                                 rd.skip_ws_before_read(), prefix_width,
6214
924
                                 value_width));
6215
924
            std::tie(it, postfix_width) = postfix_result;
6216
924
        }
6217
6218
1.27k
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
1.27k
            specs, prefix_width, value_width, postfix_width));
6220
1.17k
        return it;
6221
1.27k
    }
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_22reader_impl_for_stringIcEESA_NSt3__112basic_stringIcNSG_11char_traitsIcEENSG_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
6160
2.23k
    {
6161
2.23k
        const bool need_skipped_width =
6162
2.23k
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
2.23k
        auto it = rng.begin();
6166
2.23k
        std::ptrdiff_t prefix_width = 0;
6167
2.23k
        if (specs.precision != 0) {
6168
844
            auto max_width_view = take_width(rng, specs.precision);
6169
844
            SCN_TRY(prefix_result,
6170
816
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
816
            it = prefix_result.first.base();
6172
816
            prefix_width = prefix_result.second;
6173
816
        }
6174
1.38k
        else {
6175
1.38k
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
1.38k
            std::tie(it, prefix_width) = prefix_result;
6177
1.38k
        }
6178
2.20k
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
2.20k
        std::ptrdiff_t value_width = 0;
6182
2.20k
        if (specs.precision != 0) {
6183
816
            if (specs.precision <= prefix_width) {
6184
10
                return detail::unexpected_scan_error(
6185
10
                    scan_error::invalid_fill,
6186
10
                    "Too many fill characters before value, "
6187
10
                    "precision exceeded before reading value");
6188
10
            }
6189
6190
806
            const auto initial_width = specs.precision - prefix_width;
6191
806
            auto max_width_view =
6192
806
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
806
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
456
            it = w_it.base();
6195
456
            value_width = initial_width - w_it.count();
6196
456
        }
6197
1.38k
        else {
6198
1.38k
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
814
                                             specs, value, loc));
6200
6201
814
            if (need_skipped_width) {
6202
216
                value_width = calculate_text_width(
6203
216
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
216
                        .view());
6205
216
            }
6206
814
        }
6207
6208
        // Read postfix
6209
1.27k
        std::ptrdiff_t postfix_width = 0;
6210
1.27k
        if (it != rng.end()) {
6211
924
            SCN_TRY(postfix_result,
6212
924
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
924
                                 rd.skip_ws_before_read(), prefix_width,
6214
924
                                 value_width));
6215
924
            std::tie(it, postfix_width) = postfix_result;
6216
924
        }
6217
6218
1.27k
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
1.27k
            specs, prefix_width, value_width, postfix_width));
6220
1.17k
        return it;
6221
1.27k
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_22reader_impl_for_stringIcEESA_NSt3__117basic_string_viewIwNSG_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_22reader_impl_for_stringIcEESA_NSt3__112basic_stringIwNSG_11char_traitsIwEENSG_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
6160
2.23k
    {
6161
2.23k
        const bool need_skipped_width =
6162
2.23k
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
2.23k
        auto it = rng.begin();
6166
2.23k
        std::ptrdiff_t prefix_width = 0;
6167
2.23k
        if (specs.precision != 0) {
6168
844
            auto max_width_view = take_width(rng, specs.precision);
6169
844
            SCN_TRY(prefix_result,
6170
816
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
816
            it = prefix_result.first.base();
6172
816
            prefix_width = prefix_result.second;
6173
816
        }
6174
1.38k
        else {
6175
1.38k
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
1.38k
            std::tie(it, prefix_width) = prefix_result;
6177
1.38k
        }
6178
2.20k
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
2.20k
        std::ptrdiff_t value_width = 0;
6182
2.20k
        if (specs.precision != 0) {
6183
816
            if (specs.precision <= prefix_width) {
6184
10
                return detail::unexpected_scan_error(
6185
10
                    scan_error::invalid_fill,
6186
10
                    "Too many fill characters before value, "
6187
10
                    "precision exceeded before reading value");
6188
10
            }
6189
6190
806
            const auto initial_width = specs.precision - prefix_width;
6191
806
            auto max_width_view =
6192
806
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
806
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
456
            it = w_it.base();
6195
456
            value_width = initial_width - w_it.count();
6196
456
        }
6197
1.38k
        else {
6198
1.38k
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
814
                                             specs, value, loc));
6200
6201
814
            if (need_skipped_width) {
6202
216
                value_width = calculate_text_width(
6203
216
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
216
                        .view());
6205
216
            }
6206
814
        }
6207
6208
        // Read postfix
6209
1.27k
        std::ptrdiff_t postfix_width = 0;
6210
1.27k
        if (it != rng.end()) {
6211
924
            SCN_TRY(postfix_result,
6212
924
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
924
                                 rd.skip_ws_before_read(), prefix_width,
6214
924
                                 value_width));
6215
924
            std::tie(it, postfix_width) = postfix_result;
6216
924
        }
6217
6218
1.27k
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
1.27k
            specs, prefix_width, value_width, postfix_width));
6220
1.17k
        return it;
6221
1.27k
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_29reader_impl_for_regex_matchesIcEESA_NS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_29reader_impl_for_regex_matchesIcEESA_NS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEcEEE4implINS1_25reader_impl_for_monostateIcEESA_NS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_23reader_impl_for_voidptrIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEPvEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_23reader_impl_for_voidptrIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEPvEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_20reader_impl_for_boolIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEbEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_20reader_impl_for_boolIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEbEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_wcharIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_21reader_impl_for_wcharIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEwEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_26reader_impl_for_code_pointIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEEDiEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_26reader_impl_for_code_pointIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEEDiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_25reader_impl_for_monostateIcEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIcE16forward_iteratorENSB_18default_sentinel_tEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEcEEE4implINS1_25reader_impl_for_monostateIcEENSt3__117basic_string_viewIcNSB_11char_traitsIcEEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_aEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_sEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_iEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6160
628
    {
6161
628
        const bool need_skipped_width =
6162
628
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
628
        auto it = rng.begin();
6166
628
        std::ptrdiff_t prefix_width = 0;
6167
628
        if (specs.precision != 0) {
6168
224
            auto max_width_view = take_width(rng, specs.precision);
6169
224
            SCN_TRY(prefix_result,
6170
210
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
210
            it = prefix_result.first.base();
6172
210
            prefix_width = prefix_result.second;
6173
210
        }
6174
404
        else {
6175
404
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
404
            std::tie(it, prefix_width) = prefix_result;
6177
404
        }
6178
614
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
614
        std::ptrdiff_t value_width = 0;
6182
614
        if (specs.precision != 0) {
6183
210
            if (specs.precision <= prefix_width) {
6184
2
                return detail::unexpected_scan_error(
6185
2
                    scan_error::invalid_fill,
6186
2
                    "Too many fill characters before value, "
6187
2
                    "precision exceeded before reading value");
6188
2
            }
6189
6190
208
            const auto initial_width = specs.precision - prefix_width;
6191
208
            auto max_width_view =
6192
208
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
208
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
32
            it = w_it.base();
6195
32
            value_width = initial_width - w_it.count();
6196
32
        }
6197
404
        else {
6198
404
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
30
                                             specs, value, loc));
6200
6201
30
            if (need_skipped_width) {
6202
6
                value_width = calculate_text_width(
6203
6
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
6
                        .view());
6205
6
            }
6206
30
        }
6207
6208
        // Read postfix
6209
62
        std::ptrdiff_t postfix_width = 0;
6210
62
        if (it != rng.end()) {
6211
62
            SCN_TRY(postfix_result,
6212
62
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
62
                                 rd.skip_ws_before_read(), prefix_width,
6214
62
                                 value_width));
6215
62
            std::tie(it, postfix_width) = postfix_result;
6216
62
        }
6217
6218
62
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
62
            specs, prefix_width, value_width, postfix_width));
6220
58
        return it;
6221
62
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_lEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_xEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_hEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_tEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_jEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6160
628
    {
6161
628
        const bool need_skipped_width =
6162
628
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
628
        auto it = rng.begin();
6166
628
        std::ptrdiff_t prefix_width = 0;
6167
628
        if (specs.precision != 0) {
6168
224
            auto max_width_view = take_width(rng, specs.precision);
6169
224
            SCN_TRY(prefix_result,
6170
210
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
210
            it = prefix_result.first.base();
6172
210
            prefix_width = prefix_result.second;
6173
210
        }
6174
404
        else {
6175
404
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
404
            std::tie(it, prefix_width) = prefix_result;
6177
404
        }
6178
614
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
614
        std::ptrdiff_t value_width = 0;
6182
614
        if (specs.precision != 0) {
6183
210
            if (specs.precision <= prefix_width) {
6184
2
                return detail::unexpected_scan_error(
6185
2
                    scan_error::invalid_fill,
6186
2
                    "Too many fill characters before value, "
6187
2
                    "precision exceeded before reading value");
6188
2
            }
6189
6190
208
            const auto initial_width = specs.precision - prefix_width;
6191
208
            auto max_width_view =
6192
208
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
208
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
32
            it = w_it.base();
6195
32
            value_width = initial_width - w_it.count();
6196
32
        }
6197
404
        else {
6198
404
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
30
                                             specs, value, loc));
6200
6201
30
            if (need_skipped_width) {
6202
6
                value_width = calculate_text_width(
6203
6
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
6
                        .view());
6205
6
            }
6206
30
        }
6207
6208
        // Read postfix
6209
62
        std::ptrdiff_t postfix_width = 0;
6210
62
        if (it != rng.end()) {
6211
62
            SCN_TRY(postfix_result,
6212
62
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
62
                                 rd.skip_ws_before_read(), prefix_width,
6214
62
                                 value_width));
6215
62
            std::tie(it, postfix_width) = postfix_result;
6216
62
        }
6217
6218
62
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
62
            specs, prefix_width, value_width, postfix_width));
6220
58
        return it;
6221
62
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_mEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_19reader_impl_for_intIwEESA_yEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_23reader_impl_for_voidptrIwEESA_PvEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Line
Count
Source
6160
502
    {
6161
502
        const bool need_skipped_width =
6162
502
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
502
        auto it = rng.begin();
6166
502
        std::ptrdiff_t prefix_width = 0;
6167
502
        if (specs.precision != 0) {
6168
162
            auto max_width_view = take_width(rng, specs.precision);
6169
162
            SCN_TRY(prefix_result,
6170
158
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
158
            it = prefix_result.first.base();
6172
158
            prefix_width = prefix_result.second;
6173
158
        }
6174
340
        else {
6175
340
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
340
            std::tie(it, prefix_width) = prefix_result;
6177
340
        }
6178
498
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
498
        std::ptrdiff_t value_width = 0;
6182
498
        if (specs.precision != 0) {
6183
158
            if (specs.precision <= prefix_width) {
6184
2
                return detail::unexpected_scan_error(
6185
2
                    scan_error::invalid_fill,
6186
2
                    "Too many fill characters before value, "
6187
2
                    "precision exceeded before reading value");
6188
2
            }
6189
6190
156
            const auto initial_width = specs.precision - prefix_width;
6191
156
            auto max_width_view =
6192
156
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
156
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
16
            it = w_it.base();
6195
16
            value_width = initial_width - w_it.count();
6196
16
        }
6197
340
        else {
6198
340
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
22
                                             specs, value, loc));
6200
6201
22
            if (need_skipped_width) {
6202
6
                value_width = calculate_text_width(
6203
6
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
6
                        .view());
6205
6
            }
6206
22
        }
6207
6208
        // Read postfix
6209
38
        std::ptrdiff_t postfix_width = 0;
6210
38
        if (it != rng.end()) {
6211
38
            SCN_TRY(postfix_result,
6212
38
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
38
                                 rd.skip_ws_before_read(), prefix_width,
6214
38
                                 value_width));
6215
38
            std::tie(it, postfix_width) = postfix_result;
6216
38
        }
6217
6218
38
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
38
            specs, prefix_width, value_width, postfix_width));
6220
34
        return it;
6221
38
    }
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_20reader_impl_for_boolIwEESA_bEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6160
712
    {
6161
712
        const bool need_skipped_width =
6162
712
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
712
        auto it = rng.begin();
6166
712
        std::ptrdiff_t prefix_width = 0;
6167
712
        if (specs.precision != 0) {
6168
248
            auto max_width_view = take_width(rng, specs.precision);
6169
248
            SCN_TRY(prefix_result,
6170
234
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
234
            it = prefix_result.first.base();
6172
234
            prefix_width = prefix_result.second;
6173
234
        }
6174
464
        else {
6175
464
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
464
            std::tie(it, prefix_width) = prefix_result;
6177
464
        }
6178
698
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
698
        std::ptrdiff_t value_width = 0;
6182
698
        if (specs.precision != 0) {
6183
234
            if (specs.precision <= prefix_width) {
6184
4
                return detail::unexpected_scan_error(
6185
4
                    scan_error::invalid_fill,
6186
4
                    "Too many fill characters before value, "
6187
4
                    "precision exceeded before reading value");
6188
4
            }
6189
6190
230
            const auto initial_width = specs.precision - prefix_width;
6191
230
            auto max_width_view =
6192
230
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
230
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
32
            it = w_it.base();
6195
32
            value_width = initial_width - w_it.count();
6196
32
        }
6197
464
        else {
6198
464
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
30
                                             specs, value, loc));
6200
6201
30
            if (need_skipped_width) {
6202
6
                value_width = calculate_text_width(
6203
6
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
6
                        .view());
6205
6
            }
6206
30
        }
6207
6208
        // Read postfix
6209
62
        std::ptrdiff_t postfix_width = 0;
6210
62
        if (it != rng.end()) {
6211
62
            SCN_TRY(postfix_result,
6212
62
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
62
                                 rd.skip_ws_before_read(), prefix_width,
6214
62
                                 value_width));
6215
62
            std::tie(it, postfix_width) = postfix_result;
6216
62
        }
6217
6218
62
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
62
            specs, prefix_width, value_width, postfix_width));
6220
58
        return it;
6221
62
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_20reader_impl_for_charIwEESA_cEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_21reader_impl_for_wcharIwEESA_wEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6160
578
    {
6161
578
        const bool need_skipped_width =
6162
578
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
578
        auto it = rng.begin();
6166
578
        std::ptrdiff_t prefix_width = 0;
6167
578
        if (specs.precision != 0) {
6168
198
            auto max_width_view = take_width(rng, specs.precision);
6169
198
            SCN_TRY(prefix_result,
6170
198
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
198
            it = prefix_result.first.base();
6172
198
            prefix_width = prefix_result.second;
6173
198
        }
6174
380
        else {
6175
380
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
380
            std::tie(it, prefix_width) = prefix_result;
6177
380
        }
6178
578
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
578
        std::ptrdiff_t value_width = 0;
6182
578
        if (specs.precision != 0) {
6183
198
            if (specs.precision <= prefix_width) {
6184
2
                return detail::unexpected_scan_error(
6185
2
                    scan_error::invalid_fill,
6186
2
                    "Too many fill characters before value, "
6187
2
                    "precision exceeded before reading value");
6188
2
            }
6189
6190
196
            const auto initial_width = specs.precision - prefix_width;
6191
196
            auto max_width_view =
6192
196
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
196
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
166
            it = w_it.base();
6195
166
            value_width = initial_width - w_it.count();
6196
166
        }
6197
380
        else {
6198
380
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
342
                                             specs, value, loc));
6200
6201
342
            if (need_skipped_width) {
6202
230
                value_width = calculate_text_width(
6203
230
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
230
                        .view());
6205
230
            }
6206
342
        }
6207
6208
        // Read postfix
6209
508
        std::ptrdiff_t postfix_width = 0;
6210
508
        if (it != rng.end()) {
6211
508
            SCN_TRY(postfix_result,
6212
508
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
508
                                 rd.skip_ws_before_read(), prefix_width,
6214
508
                                 value_width));
6215
508
            std::tie(it, postfix_width) = postfix_result;
6216
508
        }
6217
6218
508
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
508
            specs, prefix_width, value_width, postfix_width));
6220
282
        return it;
6221
508
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_26reader_impl_for_code_pointIwEESA_DiEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_21reader_impl_for_floatIwEESA_fEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_21reader_impl_for_floatIwEESA_dEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6160
652
    {
6161
652
        const bool need_skipped_width =
6162
652
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
652
        auto it = rng.begin();
6166
652
        std::ptrdiff_t prefix_width = 0;
6167
652
        if (specs.precision != 0) {
6168
208
            auto max_width_view = take_width(rng, specs.precision);
6169
208
            SCN_TRY(prefix_result,
6170
198
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
198
            it = prefix_result.first.base();
6172
198
            prefix_width = prefix_result.second;
6173
198
        }
6174
444
        else {
6175
444
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
444
            std::tie(it, prefix_width) = prefix_result;
6177
444
        }
6178
642
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
642
        std::ptrdiff_t value_width = 0;
6182
642
        if (specs.precision != 0) {
6183
198
            if (specs.precision <= prefix_width) {
6184
4
                return detail::unexpected_scan_error(
6185
4
                    scan_error::invalid_fill,
6186
4
                    "Too many fill characters before value, "
6187
4
                    "precision exceeded before reading value");
6188
4
            }
6189
6190
194
            const auto initial_width = specs.precision - prefix_width;
6191
194
            auto max_width_view =
6192
194
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
194
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
30
            it = w_it.base();
6195
30
            value_width = initial_width - w_it.count();
6196
30
        }
6197
444
        else {
6198
444
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
78
                                             specs, value, loc));
6200
6201
78
            if (need_skipped_width) {
6202
6
                value_width = calculate_text_width(
6203
6
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
6
                        .view());
6205
6
            }
6206
78
        }
6207
6208
        // Read postfix
6209
108
        std::ptrdiff_t postfix_width = 0;
6210
108
        if (it != rng.end()) {
6211
108
            SCN_TRY(postfix_result,
6212
108
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
108
                                 rd.skip_ws_before_read(), prefix_width,
6214
108
                                 value_width));
6215
108
            std::tie(it, postfix_width) = postfix_result;
6216
108
        }
6217
6218
108
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
108
            specs, prefix_width, value_width, postfix_width));
6220
104
        return it;
6221
108
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_21reader_impl_for_floatIwEESA_eEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_22reader_impl_for_stringIwEESA_NSt3__117basic_string_viewIcNSG_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_22reader_impl_for_stringIwEESA_NSt3__112basic_stringIcNSG_11char_traitsIcEENSG_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
6160
926
    {
6161
926
        const bool need_skipped_width =
6162
926
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
926
        auto it = rng.begin();
6166
926
        std::ptrdiff_t prefix_width = 0;
6167
926
        if (specs.precision != 0) {
6168
354
            auto max_width_view = take_width(rng, specs.precision);
6169
354
            SCN_TRY(prefix_result,
6170
350
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
350
            it = prefix_result.first.base();
6172
350
            prefix_width = prefix_result.second;
6173
350
        }
6174
572
        else {
6175
572
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
572
            std::tie(it, prefix_width) = prefix_result;
6177
572
        }
6178
922
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
922
        std::ptrdiff_t value_width = 0;
6182
922
        if (specs.precision != 0) {
6183
350
            if (specs.precision <= prefix_width) {
6184
6
                return detail::unexpected_scan_error(
6185
6
                    scan_error::invalid_fill,
6186
6
                    "Too many fill characters before value, "
6187
6
                    "precision exceeded before reading value");
6188
6
            }
6189
6190
344
            const auto initial_width = specs.precision - prefix_width;
6191
344
            auto max_width_view =
6192
344
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
344
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
264
            it = w_it.base();
6195
264
            value_width = initial_width - w_it.count();
6196
264
        }
6197
572
        else {
6198
572
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
508
                                             specs, value, loc));
6200
6201
508
            if (need_skipped_width) {
6202
288
                value_width = calculate_text_width(
6203
288
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
288
                        .view());
6205
288
            }
6206
508
        }
6207
6208
        // Read postfix
6209
772
        std::ptrdiff_t postfix_width = 0;
6210
772
        if (it != rng.end()) {
6211
456
            SCN_TRY(postfix_result,
6212
456
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
456
                                 rd.skip_ws_before_read(), prefix_width,
6214
456
                                 value_width));
6215
456
            std::tie(it, postfix_width) = postfix_result;
6216
456
        }
6217
6218
772
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
772
            specs, prefix_width, value_width, postfix_width));
6220
690
        return it;
6221
772
    }
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_22reader_impl_for_stringIwEESA_NSt3__117basic_string_viewIwNSG_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Line
Count
Source
6160
926
    {
6161
926
        const bool need_skipped_width =
6162
926
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
926
        auto it = rng.begin();
6166
926
        std::ptrdiff_t prefix_width = 0;
6167
926
        if (specs.precision != 0) {
6168
354
            auto max_width_view = take_width(rng, specs.precision);
6169
354
            SCN_TRY(prefix_result,
6170
350
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
350
            it = prefix_result.first.base();
6172
350
            prefix_width = prefix_result.second;
6173
350
        }
6174
572
        else {
6175
572
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
572
            std::tie(it, prefix_width) = prefix_result;
6177
572
        }
6178
922
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
922
        std::ptrdiff_t value_width = 0;
6182
922
        if (specs.precision != 0) {
6183
350
            if (specs.precision <= prefix_width) {
6184
6
                return detail::unexpected_scan_error(
6185
6
                    scan_error::invalid_fill,
6186
6
                    "Too many fill characters before value, "
6187
6
                    "precision exceeded before reading value");
6188
6
            }
6189
6190
344
            const auto initial_width = specs.precision - prefix_width;
6191
344
            auto max_width_view =
6192
344
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
344
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
264
            it = w_it.base();
6195
264
            value_width = initial_width - w_it.count();
6196
264
        }
6197
572
        else {
6198
572
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
508
                                             specs, value, loc));
6200
6201
508
            if (need_skipped_width) {
6202
288
                value_width = calculate_text_width(
6203
288
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
288
                        .view());
6205
288
            }
6206
508
        }
6207
6208
        // Read postfix
6209
772
        std::ptrdiff_t postfix_width = 0;
6210
772
        if (it != rng.end()) {
6211
456
            SCN_TRY(postfix_result,
6212
456
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
456
                                 rd.skip_ws_before_read(), prefix_width,
6214
456
                                 value_width));
6215
456
            std::tie(it, postfix_width) = postfix_result;
6216
456
        }
6217
6218
772
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
772
            specs, prefix_width, value_width, postfix_width));
6220
690
        return it;
6221
772
    }
_ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_22reader_impl_for_stringIwEESA_NSt3__112basic_stringIwNSG_11char_traitsIwEENSG_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
6160
926
    {
6161
926
        const bool need_skipped_width =
6162
926
            specs.width != 0 || specs.precision != 0;
6163
6164
        // Read prefix
6165
926
        auto it = rng.begin();
6166
926
        std::ptrdiff_t prefix_width = 0;
6167
926
        if (specs.precision != 0) {
6168
354
            auto max_width_view = take_width(rng, specs.precision);
6169
354
            SCN_TRY(prefix_result,
6170
350
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6171
350
            it = prefix_result.first.base();
6172
350
            prefix_width = prefix_result.second;
6173
350
        }
6174
572
        else {
6175
572
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6176
572
            std::tie(it, prefix_width) = prefix_result;
6177
572
        }
6178
922
        auto prefix_end_it = it;
6179
6180
        // Read value
6181
922
        std::ptrdiff_t value_width = 0;
6182
922
        if (specs.precision != 0) {
6183
350
            if (specs.precision <= prefix_width) {
6184
6
                return detail::unexpected_scan_error(
6185
6
                    scan_error::invalid_fill,
6186
6
                    "Too many fill characters before value, "
6187
6
                    "precision exceeded before reading value");
6188
6
            }
6189
6190
344
            const auto initial_width = specs.precision - prefix_width;
6191
344
            auto max_width_view =
6192
344
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6193
344
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6194
264
            it = w_it.base();
6195
264
            value_width = initial_width - w_it.count();
6196
264
        }
6197
572
        else {
6198
572
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6199
508
                                             specs, value, loc));
6200
6201
508
            if (need_skipped_width) {
6202
288
                value_width = calculate_text_width(
6203
288
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6204
288
                        .view());
6205
288
            }
6206
508
        }
6207
6208
        // Read postfix
6209
772
        std::ptrdiff_t postfix_width = 0;
6210
772
        if (it != rng.end()) {
6211
456
            SCN_TRY(postfix_result,
6212
456
                    impl_postfix(ranges::subrange{it, rng.end()},
6213
456
                                 rd.skip_ws_before_read(), prefix_width,
6214
456
                                 value_width));
6215
456
            std::tie(it, postfix_width) = postfix_result;
6216
456
        }
6217
6218
772
        SCN_TRY_DISCARD(check_widths_for_arg_reader(
6219
772
            specs, prefix_width, value_width, postfix_width));
6220
690
        return it;
6221
772
    }
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_29reader_impl_for_regex_matchesIwEESA_NS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_29reader_impl_for_regex_matchesIwEESA_NS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEwEEE4implINS1_25reader_impl_for_monostateIwEESA_NS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_23reader_impl_for_voidptrIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEPvEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_23reader_impl_for_voidptrIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEPvEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_20reader_impl_for_boolIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEbEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_20reader_impl_for_boolIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEbEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_20reader_impl_for_charIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_20reader_impl_for_charIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEcEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_26reader_impl_for_code_pointIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEEDiEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_26reader_impl_for_code_pointIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEEDiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_25reader_impl_for_monostateIwEENS0_6ranges6detail9subrange_8subrangeINS4_17basic_scan_bufferIwE16forward_iteratorENSB_18default_sentinel_tEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNSB_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v44impl10arg_readerINS0_18basic_scan_contextINS0_6detail16buffer_range_tagEwEEE4implINS1_25reader_impl_for_monostateIwEENSt3__117basic_string_viewIwNSB_11char_traitsIwEEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
6222
6223
    template <typename T>
6224
    scan_expected<iterator> operator()(T& value)
6225
32.0k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
32.0k
                          basic_contiguous_scan_context<char_type>>) {
6230
32.0k
            auto rd = make_reader<T, char_type>();
6231
32.0k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
17.3k
            return impl(rd, range, value);
6233
        }
6234
0
        else if constexpr (!detail::is_type_disabled<T>) {
6235
0
            auto rd = make_reader<T, char_type>();
6236
0
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
0
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
0
                specs.width != 0) {
6240
0
                return impl(rd, range, value);
6241
0
            }
6242
6243
0
            auto crange = get_as_contiguous(range);
6244
0
            SCN_TRY(it, impl(rd, crange, value));
6245
0
            return ranges::next(range.begin(),
6246
0
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
32.0k
    }
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<char>(char&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<short>(short&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<int>(int&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<long>(long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned short>(unsigned short&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned int>(unsigned int&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned long long>(unsigned long long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<float>(float&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<double>(double&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<long double>(long double&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<scn::v4::basic_regex_matches<char> >(scn::v4::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<scn::v4::basic_regex_matches<wchar_t> >(scn::v4::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<wchar_t>(wchar_t&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<short>(short&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<int>(int&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<long>(long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned short>(unsigned short&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned int>(unsigned int&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned long long>(unsigned long long&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<float>(float&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<double>(double&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<long double>(long double&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<scn::v4::basic_regex_matches<char> >(scn::v4::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<scn::v4::basic_regex_matches<wchar_t> >(scn::v4::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<short>(short&)
scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<int>(int&)
Line
Count
Source
6225
2.41k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
2.41k
                          basic_contiguous_scan_context<char_type>>) {
6230
2.41k
            auto rd = make_reader<T, char_type>();
6231
2.41k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
668
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
2.41k
    }
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<long>(long&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<unsigned short>(unsigned short&)
scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<unsigned int>(unsigned int&)
Line
Count
Source
6225
2.41k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
2.41k
                          basic_contiguous_scan_context<char_type>>) {
6230
2.41k
            auto rd = make_reader<T, char_type>();
6231
2.41k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
668
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
2.41k
    }
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<unsigned long long>(unsigned long long&)
scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<void*>(void*&)
Line
Count
Source
6225
2.37k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
2.37k
                          basic_contiguous_scan_context<char_type>>) {
6230
2.37k
            auto rd = make_reader<T, char_type>();
6231
2.37k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
592
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
2.37k
    }
scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<bool>(bool&)
Line
Count
Source
6225
2.41k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
2.41k
                          basic_contiguous_scan_context<char_type>>) {
6230
2.41k
            auto rd = make_reader<T, char_type>();
6231
2.41k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
922
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
2.41k
    }
scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<char>(char&)
Line
Count
Source
6225
2.37k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
2.37k
                          basic_contiguous_scan_context<char_type>>) {
6230
2.37k
            auto rd = make_reader<T, char_type>();
6231
2.37k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
646
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
2.37k
    }
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<wchar_t>(wchar_t&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<float>(float&)
scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<double>(double&)
Line
Count
Source
6225
2.41k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
2.41k
                          basic_contiguous_scan_context<char_type>>) {
6230
2.41k
            auto rd = make_reader<T, char_type>();
6231
2.41k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
680
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
2.41k
    }
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<long double>(long double&)
scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Line
Count
Source
6225
2.37k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
2.37k
                          basic_contiguous_scan_context<char_type>>) {
6230
2.37k
            auto rd = make_reader<T, char_type>();
6231
2.37k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
2.23k
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
2.37k
    }
scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
6225
2.37k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
2.37k
                          basic_contiguous_scan_context<char_type>>) {
6230
2.37k
            auto rd = make_reader<T, char_type>();
6231
2.37k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
2.23k
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
2.37k
    }
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
6225
2.37k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
2.37k
                          basic_contiguous_scan_context<char_type>>) {
6230
2.37k
            auto rd = make_reader<T, char_type>();
6231
2.37k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
2.23k
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
2.37k
    }
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<scn::v4::basic_regex_matches<char> >(scn::v4::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<scn::v4::basic_regex_matches<wchar_t> >(scn::v4::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v4::scan_expected<char const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()<scn::v4::monostate>(scn::v4::monostate&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<void*>(void*&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<bool>(bool&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<wchar_t>(wchar_t&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<scn::v4::monostate>(scn::v4::monostate&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<short>(short&)
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<int>(int&)
Line
Count
Source
6225
1.20k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
1.20k
                          basic_contiguous_scan_context<char_type>>) {
6230
1.20k
            auto rd = make_reader<T, char_type>();
6231
1.20k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
628
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
1.20k
    }
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<long>(long&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<unsigned short>(unsigned short&)
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<unsigned int>(unsigned int&)
Line
Count
Source
6225
1.20k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
1.20k
                          basic_contiguous_scan_context<char_type>>) {
6230
1.20k
            auto rd = make_reader<T, char_type>();
6231
1.20k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
628
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
1.20k
    }
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<unsigned long long>(unsigned long long&)
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<void*>(void*&)
Line
Count
Source
6225
1.14k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
1.14k
                          basic_contiguous_scan_context<char_type>>) {
6230
1.14k
            auto rd = make_reader<T, char_type>();
6231
1.14k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
502
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
1.14k
    }
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<bool>(bool&)
Line
Count
Source
6225
1.20k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
1.20k
                          basic_contiguous_scan_context<char_type>>) {
6230
1.20k
            auto rd = make_reader<T, char_type>();
6231
1.20k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
712
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
1.20k
    }
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<char>(char&)
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<wchar_t>(wchar_t&)
Line
Count
Source
6225
1.14k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
1.14k
                          basic_contiguous_scan_context<char_type>>) {
6230
1.14k
            auto rd = make_reader<T, char_type>();
6231
1.14k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
578
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
1.14k
    }
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<float>(float&)
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<double>(double&)
Line
Count
Source
6225
1.20k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
1.20k
                          basic_contiguous_scan_context<char_type>>) {
6230
1.20k
            auto rd = make_reader<T, char_type>();
6231
1.20k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
652
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
1.20k
    }
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<long double>(long double&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
6225
1.14k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
1.14k
                          basic_contiguous_scan_context<char_type>>) {
6230
1.14k
            auto rd = make_reader<T, char_type>();
6231
1.14k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
926
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
1.14k
    }
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
Line
Count
Source
6225
1.14k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
1.14k
                          basic_contiguous_scan_context<char_type>>) {
6230
1.14k
            auto rd = make_reader<T, char_type>();
6231
1.14k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
926
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
1.14k
    }
scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
6225
1.14k
    {
6226
        if constexpr (!detail::is_type_disabled<T> &&
6227
                      std::is_same_v<
6228
                          context_type,
6229
1.14k
                          basic_contiguous_scan_context<char_type>>) {
6230
1.14k
            auto rd = make_reader<T, char_type>();
6231
1.14k
            SCN_TRY_DISCARD(rd.check_specs(specs));
6232
926
            return impl(rd, range, value);
6233
        }
6234
        else if constexpr (!detail::is_type_disabled<T>) {
6235
            auto rd = make_reader<T, char_type>();
6236
            SCN_TRY_DISCARD(rd.check_specs(specs));
6237
6238
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6239
                specs.width != 0) {
6240
                return impl(rd, range, value);
6241
            }
6242
6243
            auto crange = get_as_contiguous(range);
6244
            SCN_TRY(it, impl(rd, crange, value));
6245
            return ranges::next(range.begin(),
6246
                                ranges::distance(crange.begin(), it));
6247
        }
6248
        else {
6249
            SCN_EXPECT(false);
6250
            SCN_UNREACHABLE;
6251
        }
6252
1.14k
    }
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<scn::v4::basic_regex_matches<char> >(scn::v4::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<scn::v4::basic_regex_matches<wchar_t> >(scn::v4::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v4::scan_expected<wchar_t const*> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()<scn::v4::monostate>(scn::v4::monostate&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<void*>(void*&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<bool>(bool&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<char>(char&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<scn::v4::monostate>(scn::v4::monostate&)
6253
6254
    scan_expected<iterator> operator()(
6255
        typename basic_scan_arg<detail::default_context<char_type>>::handle)
6256
        const
6257
0
    {
6258
0
        SCN_EXPECT(false);
6259
0
        SCN_UNREACHABLE;
6260
0
    }
Unexecuted instantiation: scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<char const*, char const*>, char> >::operator()(scn::v4::basic_scan_arg<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::handle) const
Unexecuted instantiation: scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()(scn::v4::basic_scan_arg<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::handle) const
Unexecuted instantiation: scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t> >::operator()(scn::v4::basic_scan_arg<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::handle) const
Unexecuted instantiation: scn::v4::impl::arg_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()(scn::v4::basic_scan_arg<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::handle) const
6261
6262
    range_type range;
6263
    const detail::format_specs& specs;
6264
    detail::locale_ref loc;
6265
};
6266
6267
template <typename Context>
6268
struct custom_reader {
6269
    using context_type = Context;
6270
    using char_type = typename context_type::char_type;
6271
    using parse_context_type = typename context_type::parse_context_type;
6272
    using iterator = typename context_type::iterator;
6273
6274
    template <typename T>
6275
    scan_expected<iterator> operator()(T&) const
6276
0
    {
6277
0
        SCN_EXPECT(false);
6278
0
        SCN_UNREACHABLE;
6279
0
    }
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<signed char>(signed char&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<short>(short&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<int>(int&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<long>(long&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<long long>(long long&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned char>(unsigned char&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned short>(unsigned short&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned int>(unsigned int&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned long>(unsigned long&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<unsigned long long>(unsigned long long&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<void*>(void*&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<bool>(bool&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<char>(char&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<wchar_t>(wchar_t&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<char32_t>(char32_t&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<float>(float&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<double>(double&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<long double>(long double&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<scn::v4::basic_regex_matches<char> >(scn::v4::basic_regex_matches<char>&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<scn::v4::basic_regex_matches<wchar_t> >(scn::v4::basic_regex_matches<wchar_t>&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<char>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()<scn::v4::monostate>(scn::v4::monostate&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<signed char>(signed char&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<short>(short&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<int>(int&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<long>(long&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<long long>(long long&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned char>(unsigned char&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned short>(unsigned short&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned int>(unsigned int&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned long>(unsigned long&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<unsigned long long>(unsigned long long&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<void*>(void*&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<bool>(bool&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<char>(char&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<wchar_t>(wchar_t&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<char32_t>(char32_t&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<float>(float&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<double>(double&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<long double>(long double&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<scn::v4::basic_regex_matches<char> >(scn::v4::basic_regex_matches<char>&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<scn::v4::basic_regex_matches<wchar_t> >(scn::v4::basic_regex_matches<wchar_t>&) const
Unexecuted instantiation: scn::v4::scan_expected<scn::v4::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()<scn::v4::monostate>(scn::v4::monostate&) const
6280
6281
    scan_expected<iterator> operator()(
6282
        typename basic_scan_arg<detail::default_context<char_type>>::handle h)
6283
        const
6284
0
    {
6285
0
        SCN_TRY_DISCARD(h.scan(parse_ctx, ctx));
6286
0
        return {ctx.begin()};
6287
0
    }
Unexecuted instantiation: scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::operator()(scn::v4::basic_scan_arg<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, char> >::handle) const
Unexecuted instantiation: scn::v4::impl::custom_reader<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::operator()(scn::v4::basic_scan_arg<scn::v4::basic_scan_context<scn::v4::detail::buffer_range_tag, wchar_t> >::handle) const
6288
6289
    parse_context_type& parse_ctx;
6290
    context_type& ctx;
6291
};
6292
}  // namespace impl
6293
6294
SCN_END_NAMESPACE
6295
}  // namespace scn